From 505a5bbaa70033286249ca4c21bfbfce1585ed79 Mon Sep 17 00:00:00 2001 From: Andrew Grimberg Date: Mon, 8 Jan 2024 13:50:34 -0800 Subject: [PATCH] CI: Remove release email The lf-releng@lists.linuxfoundation.org mailing list is going away. This adds in GitHub releases and configures reno to limit the furthest back it needs to look for generating notes. Issue: RELENG-4931 Signed-off-by: Andrew Grimberg Signed-off-by: Anil Belur Change-Id: I6c3c09a5c99f8d77aa5d7889b86fcde557f64f32 --- .github/workflows/release.yaml | 45 ++++++++++++++++++---------------- .pre-commit-config.yaml | 14 ++++++++--- docs/conf.py | 3 ++- reno.yaml | 2 ++ 4 files changed, 38 insertions(+), 26 deletions(-) create mode 100644 reno.yaml diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 5d15aa2..9cfce1f 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -32,24 +32,27 @@ jobs: run: >- VER=$(echo "${{ steps.tag.outputs.tag }}" | tr . -) echo "ANCHOR=${VER}" >> $GITHUB_ENV - - name: Notify mailing list - uses: dawidd6/action-send-mail@v3 - with: - server_address: ${{ vars.MAIL_SERVER }} - server_port: ${{ vars.MAIL_SERVER_PORT }} - secure: true - username: ${{ secrets.MAIL_USER }} - password: ${{ secrets.MAIL_PASSWORD }} - subject: lfdocs-conf ${{ steps.tag.outputs.tag }} released - to: lf-releng@lists.linuxfoundation.org - from: LF Releng - body: | - Hi Everyone, - - docs-conf ${{ steps.tag.outputs.tag }} is released. Thanks to everyone who contributed - to this release. Release notes are avaiable online at: - - https://docs.releng.linuxfoundation.org/projects/lfdocs-conf/en/stable/release-notes.html#${{ env.ANCHOR }} - - Cheers, - LF Releng + - name: Generate reno report + run: | + # fetch last 30 changes + git fetch --depth=30 + pipx run tox -e reno -- report \ + --version "${{ steps.tag.outputs.tag }}" \ + 2>/dev/null > reno-notes.md || true + if grep -q 'reno: FAIL' reno-notes.md + then + touch modified-reno-notes.md + else + sed '/^\.pkg.*$/d' reno-notes.md | + sed '/^reno:.*$/d' | + sed '/^\.\. .*$/d' | + sed '$d' | + sed '$d' | + sed '1d' > modified-reno-notes.md + fi + - name: Create Release Notes + run: | + gh release create ${{ steps.tag.outputs.tag }} --generate-notes \ + -F modified-reno-notes.md + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 25063c1..7fad379 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ default_language_version: repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v4.5.0 hooks: - id: trailing-whitespace - id: no-commit-to-branch @@ -12,10 +12,16 @@ repos: - --branch=master - --branch=main - - repo: https://github.com/jorisroovers/gitlint - rev: v0.19.1 + - repo: local hooks: - id: gitlint + name: gitlint + language: python + additional_dependencies: + - "gitlint-core >= 0.19.1" + entry: gitlint + args: [--staged, --msg-filename] + stages: [commit-msg] - repo: https://github.com/pre-commit/mirrors-prettier rev: v3.0.0-alpha.6 @@ -29,7 +35,7 @@ repos: - id: black - repo: https://github.com/PyCQA/flake8 - rev: 6.0.0 + rev: 6.1.0 hooks: - id: flake8 args: ["--max-line-length=88"] diff --git a/docs/conf.py b/docs/conf.py index cc15e61..453d263 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -26,5 +26,6 @@ linkcheck_ignore = [ # The '#' in the path makes sphinx think it's an anchor - "https://gerrit.linuxfoundation.org/infra/#/admin/projects/releng/docs-conf" + "https://gerrit.linuxfoundation.org/infra/#/admin/projects/releng/docs-conf", + "https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#ref-role", ] diff --git a/reno.yaml b/reno.yaml new file mode 100644 index 0000000..699d466 --- /dev/null +++ b/reno.yaml @@ -0,0 +1,2 @@ +--- +earliest_version: v0.7.0