2 name: Release announcement
4 # yamllint disable-line rule:truthy
9 if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
10 runs-on: ubuntu-latest
12 - name: Checkout repository
13 uses: actions/checkout@v4
16 uses: devops-actions/action-get-tag@v1.0.2
19 VER=$(echo "${{ steps.tag.outputs.tag }}" | tr . -)
20 echo "ANCHOR=${VER}" >> $GITHUB_ENV
21 - name: Notify mailing list
22 uses: dawidd6/action-send-mail@v3
24 server_address: ${{ vars.MAIL_SERVER }}
25 server_port: ${{ vars.MAIL_SERVER_PORT }}
27 username: ${{ secrets.MAIL_USER }}
28 password: ${{ secrets.MAIL_PASSWORD }}
29 subject: global-jjb ${{ steps.tag.outputs.tag }} released
30 to: lf-releng@lists.linuxfoundation.org
31 from: ${{ vars.MAIL_FROM }}
35 global-jjb ${{ steps.tag.outputs.tag }} is released. Thanks to everyone who contributed
36 to this release. Release notes are avaiable online at:
38 https://docs.releng.linuxfoundation.org/projects/global-jjb/en/stable/release-notes.html#${{ env.ANCHOR }}
42 - name: Configure Python
43 uses: actions/setup-python@v5
46 - name: Generate reno report
48 # fetch last 30 changes
50 pipx run tox -e reno -- report \
51 --version "${{ steps.tag.outputs.tag }}" \
52 2>/dev/null > reno-notes.md || true
53 if grep -q 'reno: FAIL' reno-notes.md
55 touch modified-reno-notes.md
57 sed '/^\.pkg.*$/d' reno-notes.md |
62 sed '1d' > modified-reno-notes.md
64 - name: Create Release Notes
66 gh release create ${{ steps.tag.outputs.tag }} --generate-notes \
67 -F modified-reno-notes.md
69 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}