Skip to content

Commit a32d347

Browse files
authored
[codex] Fix release notes previous tag detection (#34)
1 parent ab9c635 commit a32d347

1 file changed

Lines changed: 22 additions & 1 deletion

File tree

.github/workflows/release-notes.yaml

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,25 @@ jobs:
6060
install -m 0755 "$tmp/communique" /usr/local/bin/communique
6161
communique --version
6262
63+
- name: Resolve previous release ref
64+
env:
65+
RELEASE_TAG: ${{ github.event.release.tag_name }}
66+
run: |
67+
set -euo pipefail
68+
69+
release_commit="$(git rev-parse --verify "${RELEASE_TAG}^{commit}")"
70+
: "${release_commit:?release commit is required}"
71+
72+
if previous_ref="$(git describe --tags --abbrev=0 --match 'v[0-9]*.[0-9]*.[0-9]*' --exclude '*-*' "${release_commit}^" 2>/dev/null)"; then
73+
echo "Previous release tag: $previous_ref"
74+
else
75+
previous_ref="$(git rev-list --max-parents=0 "$release_commit" | head -n 1)"
76+
: "${previous_ref:?previous release ref is required}"
77+
echo "No previous release tag found; using root commit: $previous_ref"
78+
fi
79+
80+
echo "PREVIOUS_RELEASE_REF=$previous_ref" >> "$GITHUB_ENV"
81+
6382
- name: Generate GitHub release notes
6483
env:
6584
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
@@ -68,4 +87,6 @@ jobs:
6887
run: |
6988
set -euo pipefail
7089
71-
communique generate "$RELEASE_TAG" --github-release --repo "${{ github.repository }}"
90+
: "${PREVIOUS_RELEASE_REF:?previous release ref is required}"
91+
92+
communique generate "$RELEASE_TAG" "$PREVIOUS_RELEASE_REF" --github-release --repo "${{ github.repository }}"

0 commit comments

Comments
 (0)