You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by vy...@apache.org on 2023/07/03 21:02:10 UTC

[logging-log4j-tools] 03/03: Make CI generate the VOTE email

This is an automated email from the ASF dual-hosted git repository.

vy pushed a commit to branch release/0.4.0
in repository https://gitbox.apache.org/repos/asf/logging-log4j-tools.git

commit 0409f0ac24607d17a34f237a04af6f6f2fc2c4d3
Author: Volkan Yazıcı <vo...@yazi.ci>
AuthorDate: Mon Jul 3 23:00:27 2023 +0200

    Make CI generate the VOTE email
---
 .github/workflows/build.yml | 38 +++++++++++++++++++++++++++++++++-----
 RELEASING.adoc              | 33 ++++++---------------------------
 2 files changed, 39 insertions(+), 32 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index a92d9e2..193626e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -182,15 +182,43 @@ jobs:
           ./mvnw \
             --show-version --batch-mode --errors --no-transfer-progress \
             --non-recursive -P distribution
-          export ZIP_FILEPATH="/tmp/apache-log4j-tools-${PROJECT_VERSION}.zip"
-          mv "target/dist.zip" "$ZIP_FILEPATH"
-          gpg --armor --detach-sign --yes --pinentry-mode error "$ZIP_FILEPATH"
-          sha512sum "$ZIP_FILEPATH" > "$ZIP_FILEPATH.sha512"
+          export DIST_FILEPATH="/tmp/apache-log4j-tools-${PROJECT_VERSION}.zip"
+          mv "target/dist.zip" "$DIST_FILEPATH"
+          gpg --armor --detach-sign --yes --pinentry-mode error "$DIST_FILEPATH"
+          sha512sum "$DIST_FILEPATH" > "$DIST_FILEPATH.sha512"
+          echo "DIST_FILEPATH=$DIST_FILEPATH" >> $GITHUB_ENV
 
       - name: Upload artifacts (RELEASE)
         if: startsWith(github.ref, 'refs/heads/release/')
         uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce   # 3.1.2
         with:
           name: Distribution
-          path: /tmp/apache-log4j-tools-*.zip*
+          path: ${{ env.DIST_FILEPATH }}*
           if-no-files-found: error
+
+      - name: Create VOTE email (RELEASE)
+        if: startsWith(github.ref, 'refs/heads/release/')
+        run: |
+          cat << EOF
+          To: dev@logging.apache.org
+          Title: [VOTE] Release Apache Log4j Tools $PROJECT_VERSION
+
+          This is a vote to release the Apache Log4j Tools $PROJECT_VERSION.
+
+          Source repository: https://github.com/apache/logging-log4j-tools
+          Commit: $GITHUB_SHA
+          Distribution: https://dist.apache.org/repos/dist/dev/logging/log4j
+          Signing key: 0x077e8893a6dcc33dd4a4d5b256e73ba9a0b592d0
+
+          Please download, test, and cast your votes on the Log4j developers list.
+
+          [ ] +1, release the artifacts
+          [ ] -1, don't release, because...
+
+          This vote is open for 72 hours and will pass unless getting a net negative vote count.
+          All votes are welcome and we encourage everyone to test the release, but only the Logging Services PMC votes are officially counted.
+          At least 3 +1 votes and more positive than negative votes are required.
+
+          # Release Notes
+          awk 'f{print} /^# 0.4.0/{f=1}' target/release-notes/$PROJECT_VERSION.md
+          EOF
diff --git a/RELEASING.adoc b/RELEASING.adoc
index 329a12d..ae1c1f8 100644
--- a/RELEASING.adoc
+++ b/RELEASING.adoc
@@ -39,46 +39,25 @@ In the code examples below, assuming the version to be released is `7.8.0`.
 +
 If not, commit necessary fixes, push, and repeat.
 . _Close_ the repository in https://repository.apache.org/[repository.apache.org]
-. Commit _the signed sources and their checksum_ (e.g., `apache-log4j-tools-7.8.0.{zip,.zip.asc,.zip.sha512}`) to https://dist.apache.org/repos/dist/dev/logging/log4j[dist.apache.org/repos/dist/**dev**/logging/log4j] Subversion repository and delete any artifacts from old releases
+. Commit _the signed distribution and its checksum_ (e.g., `apache-log4j-tools-7.8.0.{zip,.zip.asc,.zip.sha512}`) to https://dist.apache.org/repos/dist/dev/logging/log4j[dist.apache.org/repos/dist/**dev**/logging/log4j] Subversion repository and delete any artifacts from old releases
 
 == Vote the release
 
-Collect release votes via email using the following template:
-
-.`[VOTE][LAZY] Release Apache Log4j Tools 7.8.0` titled email to `dev@logging.apache.org`
-[source]
-----
-This is a lazy vote to release the Apache Log4j Tools 7.8.0.
-
-This release contains minor enhancements and bug fixes.
-
-Source repository: https://github.com/apache/logging-log4j-tools
-Commit: e82a44142280d013bd76ea18951fde00dcee192b
-Artifacts: https://dist.apache.org/repos/dist/dev/logging/log4j
-Signing key: 0x077e8893a6dcc33dd4a4d5b256e73ba9a0b592d0
-
-Please download, test, and cast your votes on the Log4j developers list.
-
-[ ] +1, release the artifacts
-[ ] -1, don't release, because...
-
-This vote is open for 72 hours and will pass unless getting a net negative vote count.
-All votes are welcome and we encourage everyone to test the release, but only the Logging Services PMC votes are officially counted.
-----
-
+. GitHub Actions workflow generates the vote email, send that email.
++
 [WARNING]
 ====
 Make sure your email is sent in plain text, that is, https://infra.apache.org/contrib-email-tips#nohtml[no HTML]!
 If you are using GMail, simply enable the _"Plain text mode"_ while composing your message.
 ====
 
-Once the consensus is reached within the set time frame, respond to the first post in the thread as follows:
-
+. Once the consensus is reached within the set time frame, respond to the first post in the thread as follows:
++
 [source]
 ----
 Adding my +1.
 
-With that, the release passes with 3 binding +1 votes from me, Piotr, and Matt.
+With that, the release passes with 3 binding +1 votes from me, <PMC-member-1>, ..., and <PMC-member-N>.
 ----
 
 == Publish the release