Skip to content

Commit 6e5f1f3

Browse files
authored
Merge pull request #503 from siom79/claude/github-release-notes-action-cmkRp
feat: Release-Notes aus ReleaseNotes.md in GitHub-Release einbinden
2 parents 6696527 + e050d5e commit 6e5f1f3

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

.github/workflows/gh-release.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,30 @@ jobs:
2121
- name: Projekt bauen
2222
run: mvn -B package
2323

24+
- name: Projektversion ermitteln
25+
run: echo "PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
26+
27+
- name: Release-Notes extrahieren
28+
run: |
29+
python3 - <<'EOF'
30+
import re, os
31+
version = os.environ['PROJECT_VERSION']
32+
with open('src/site/markdown/ReleaseNotes.md') as f:
33+
content = f.read()
34+
pattern = rf'{re.escape(version)} \(\d{{4}}-\d{{2}}-\d{{2}}\)\n-+\n(.*?)(?=\n\d+\.\d+\.\d+ \(|\Z)'
35+
match = re.search(pattern, content, re.DOTALL)
36+
notes = match.group(1).strip() if match else f'Release {version}'
37+
with open('release_notes.md', 'w') as out:
38+
out.write(notes)
39+
EOF
40+
2441
- name: Artefakte sammeln
2542
run: mkdir japicmp/build && cp japicmp/target/japicmp*.jar japicmp/build/
2643

2744
- name: Release erstellen
2845
uses: softprops/action-gh-release@v2
2946
with:
3047
files: japicmp/build/*.jar
48+
body_file: release_notes.md
3149
env:
3250
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)