chore: add legacy-migrations-version pre-commit hook

This commit is contained in:
jo 2023-02-11 00:16:45 +01:00 committed by Kyle Robbertze
parent d68ae58854
commit 45b5c5caf1
2 changed files with 28 additions and 0 deletions

View File

@ -89,6 +89,14 @@ repos:
language: script
files: ^installer/config.yml$
- id: legacy-migrations-version
name: legacy-migrations-version
description: Ensure valid schema version for migrations
entry: tools/legacy-migrations-version.sh
pass_filenames: false
language: script
files: ^api/libretime_api/legacy/migrations
- id: legacy-assets-checksum-update
name: legacy-assets-checksum-update
description: Update legacy assets checksum

View File

@ -0,0 +1,20 @@
#!/usr/bin/env bash
set -u
error() {
echo >&2 "error: $*"
exit 1
}
migrations="api/libretime_api/legacy/migrations"
version_file="$migrations/__init__.py"
latest_migration="$(find "$migrations" -name '[0-9][0-9][0-9][0-9]_*.py' | sort | tail -n 1)"
latest_migration_version="$(basename "$latest_migration" | cut -d '_' -f 1)"
latest_migration_version="$((10#$latest_migration_version))" # Strip leading zeros
sed \
-i "s#^LEGACY_SCHEMA_VERSION =.*#LEGACY_SCHEMA_VERSION = \"$latest_migration_version\"#" \
"$version_file"