Files
auto-changelog-release-action/scripts/detect-version-change.sh
Max P. 048b964204 feat(scripts): add CI utilities for versioning and changelog
- Add scripts to detect version changes and generate changelogs
- Include setup for installing and configuring git-cliff
- Automate release creation and changelog updates for CI workflows
- Improve Git author setup for consistent commits
2025-06-14 18:36:15 +02:00

33 lines
988 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# === Inputs from GitHub/Gitea Action environment ===
GIT_REF="${GITHUB_REF:-}"
COMMIT_BEFORE="${GITHUB_EVENT_BEFORE:-}"
COMMIT_AFTER="${GITHUB_SHA:-}"
VERSION_FILE="VERSION"
echo "🔍 Comparing commits:"
echo "Before: $COMMIT_BEFORE"
echo "After: $COMMIT_AFTER"
# === Check branch condition ===
if [[ "$GIT_REF" != "refs/heads/main" ]]; then
echo "Not on 'main' branch – skipping version check."
echo "version_changed=false" >> "$GITHUB_OUTPUT"
exit 0
fi
echo "📄 Changed files:"
git diff --name-only "$COMMIT_BEFORE" "$COMMIT_AFTER" || echo "(diff failed)"
if git diff --name-only "$COMMIT_BEFORE" "$COMMIT_AFTER" | grep -q "^$VERSION_FILE$"; then
echo "✅ VERSION file was changed"
echo "VERSION_CHANGED=true" >> "$GITHUB_ENV"
echo "version_changed=true" >> "$GITHUB_OUTPUT"
else
echo "ℹ️ VERSION file not changed"
echo "VERSION_CHANGED=false" >> "$GITHUB_ENV"
echo "version_changed=false" >> "$GITHUB_OUTPUT"
fi