Yicong-Huang commented on code in PR #8071:
URL: https://github.com/apache/texera/pull/8071#discussion_r4059484656
##########
.github/workflows/create-release-candidate.yml:
##########
@@ -261,13 +262,29 @@ jobs:
RC_DIR="${{ steps.vars.outputs.rc_dir }}"
COMMIT_HASH="${{ steps.vars.outputs.commit_hash }}"
IMAGE_REGISTRY="${{ steps.vars.outputs.image_registry }}"
+ # The same value the compose bundle pins in its .env: the email must
+ # list the images voters will actually pull.
+ IMAGE_TAG="${{ steps.vars.outputs.image_tag }}"
# Get GPG key ID from the imported key
GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep 'sec'
| head -n1 | awk '{print $2}' | cut -d'/' -f2)
GPG_EMAIL=$(gpg --list-secret-keys | grep 'uid' | head -n1 | grep
-oP '[\w\.-]+@[\w\.-]+')
+ # Derive the image list from the compose file the bundle ships, so
+ # the email always matches what the RC actually pulls.
+ git show "$TAG_NAME:bin/single-node/docker-compose.yml" \
+ | grep -oE '\$\{IMAGE_REGISTRY[^}]*\}/texera-[a-z-]+' \
Review Comment:
**Advisory:**
This is the one fact the step still does not derive. The pattern assumes an
image line spells its registry through `${IMAGE_REGISTRY...}` and its name in
`[a-z-]`, true on main and both release branches today. A digit in a future
name truncates it, a literal registry drops it, and :281 only fires on an empty
file. Widening to `texera-[a-z0-9-]+` plus a count assertion closes both.
##########
docs/contribution-guidelines/release-email-template.md:
##########
@@ -22,88 +22,16 @@ title: "[VOTE] Release Apache Texera (incubating) Email
Template"
weight: 80
---
-Subject: [VOTE] Release Apache Texera (incubating) ${VERSION} RC${RC_NUM}
-
-Hi Texera Community,
-
-This is a call for vote to release Apache Texera (incubating) ${VERSION}.
-
-== Release Candidate Artifacts ==
-
-The release candidate artifacts can be found at:
-https://dist.apache.org/repos/dist/dev/incubator/texera/${RC_DIR}/
-
-The artifacts include:
-- apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz (source tarball)
-- apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.asc (GPG signature)
-- apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.sha512 (SHA512 checksum)
-
-== Git Tag ==
-
-The Git tag for this release candidate:
-https://github.com/apache/incubator-texera/releases/tag/${TAG_NAME}
-
-The commit hash for this tag:
-${COMMIT_HASH}
-
-== Release Notes ==
-
-Release notes can be found at:
-https://github.com/apache/incubator-texera/releases/tag/${TAG_NAME}
-
-== Keys ==
-
-The artifacts have been signed with Key [${GPG_KEY_ID}], corresponding to
[${GPG_EMAIL}].
-
-The KEYS file containing the public keys can be found at:
-https://dist.apache.org/repos/dist/dev/incubator/texera/KEYS
-
-== How to Verify ==
-
-1. Download the release artifacts:
-
- wget
https://dist.apache.org/repos/dist/dev/incubator/texera/${RC_DIR}/apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz
- wget
https://dist.apache.org/repos/dist/dev/incubator/texera/${RC_DIR}/apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.asc
- wget
https://dist.apache.org/repos/dist/dev/incubator/texera/${RC_DIR}/apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.sha512
-
-2. Import the KEYS file and verify the GPG signature:
-
- wget https://dist.apache.org/repos/dist/dev/incubator/texera/KEYS
- gpg --import KEYS
- gpg --verify apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.asc
apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz
-
-3. Verify the SHA512 checksum:
-
- sha512sum -c apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz.sha512
-
-4. Extract and build from source:
-
- tar -xzf apache-texera-${VERSION}-rc${RC_NUM}-src.tar.gz
- cd apache-texera-${VERSION}-rc${RC_NUM}-src
- # Follow build instructions in README
-
-== How to Vote ==
-
-The vote will be open for at least 72 hours.
-
-Please vote accordingly:
-
-[ ] +1 Approve the release
-[ ] 0 No opinion
-[ ] -1 Disapprove the release (please provide the reason)
-
-== Checklist for Reference ==
-
-When reviewing, please check:
-
-[ ] Download links are valid
-[ ] Checksums and PGP signatures are valid
-[ ] LICENSE and NOTICE files are correct
-[ ] All files have ASF license headers where appropriate
-[ ] No unexpected binary files
-[ ] Source tarball matches the Git tag
-[ ] Can compile from source successfully
-
-Thanks,
-[Your Name]
-Apache Texera (incubating) PPMC
\ No newline at end of file
+The canonical vote email template lives in the repository at
+[`.github/release/vote-email-template.txt`](https://github.com/apache/texera/blob/main/.github/release/vote-email-template.txt).
+
+The release manager does not fill it in by hand. The
Review Comment:
**Polish:**
This sentence and the end of the same paragraph disagree, and the paragraph
is right: the generated file carries four markers, `<PREVIOUS_TAG>` and `<FILL
IN: ...>` among them. "Ready-to-send" on the next line has the same problem. It
is the overstatement this PR just removed from the workflow log at :299-304.
##########
.github/workflows/create-release-candidate.yml:
##########
@@ -432,7 +455,7 @@ jobs:
echo "Each artifact has a corresponding \`.asc\` (GPG signature) and
\`.sha512\` (checksum) file." >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "### Next Steps" >> $GITHUB_STEP_SUMMARY
- echo "1. Build and push container images using the \`Build and push
images\` workflow with tag \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY
+ echo "1. Build and push container images using the \`Build and push
images\` workflow with tag \`${IMAGE_TAG}\` (the tag the bundled .env pins)" >>
$GITHUB_STEP_SUMMARY
Review Comment:
**Advisory:**
One value now drives the email, the shipped `.env` and this line, which was
the ask. What is left is which value: `use_tag_as_image_tag` defaults to
`false` (:41), so the ballot advertises `texera-dashboard-service:a8667c91d`. A
voter cannot tell that tag belongs to this RC. Flipping that default is now a
one-line change. Was the commit hash deliberate?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]