chore: auto manifest on version bump; local manual script only
contrib/manifest/generate.py + pre-commit hook; install-git-hooks.sh creates .local/build-release-manifest.sh (gitignored). Remove scripts/ from remote.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
# Установка git hooks и локального скрипта ручной генерации manifest (не в git).
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
HOOK_SRC="$ROOT/contrib/hooks/pre-commit"
|
||||
HOOK_DST="$ROOT/.git/hooks/pre-commit"
|
||||
LOCAL_DIR="$ROOT/.local"
|
||||
LOCAL_SCRIPT="$LOCAL_DIR/build-release-manifest.sh"
|
||||
|
||||
if [ ! -d "$ROOT/.git" ]; then
|
||||
echo "ERROR: не git-репозиторий: $ROOT" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "$LOCAL_DIR"
|
||||
cat >"$LOCAL_SCRIPT" <<'EOF'
|
||||
#!/bin/bash
|
||||
# Локальный wrapper (не коммитится). Ручная генерация manifest.
|
||||
set -euo pipefail
|
||||
ROOT="$(git rev-parse --show-toplevel)"
|
||||
exec python3 "$ROOT/contrib/manifest/generate.py" "$@"
|
||||
EOF
|
||||
chmod +x "$LOCAL_SCRIPT"
|
||||
|
||||
cp "$HOOK_SRC" "$HOOK_DST"
|
||||
chmod +x "$HOOK_DST"
|
||||
|
||||
echo "OK: pre-commit hook → $HOOK_DST"
|
||||
echo "OK: ручной скрипт → $LOCAL_SCRIPT (в .gitignore, не уйдёт в Gitea/GitHub)"
|
||||
echo "После clone выполните: ./contrib/install-git-hooks.sh"
|
||||
Reference in New Issue
Block a user