diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index ba014b1..f0426ef 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -6,6 +6,7 @@ on: - main paths: - 'tasks/metadata.yaml' + workflow_dispatch: permissions: contents: write @@ -35,7 +36,14 @@ jobs: - name: Store metadata diff id: check-version-changes run: | - DIFF=$(git diff HEAD~1 HEAD -- tasks/metadata.yaml) + LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "") + if [ -n "$LAST_TAG" ]; then + DIFF=$(git diff "$LAST_TAG" HEAD -- tasks/metadata.yaml) + echo "DIFF_BASE=$LAST_TAG" >> "$GITHUB_ENV" + else + DIFF=$(git diff HEAD~1 HEAD -- tasks/metadata.yaml) + echo "DIFF_BASE=HEAD~1" >> "$GITHUB_ENV" + fi { echo "METADATA_DIFF<