Hey Y'all,

As we discussed briefly today, I think we can significantly improve
Parquet's ability to do faster, more consistent releases by automating more
of the release process.

To that end, I've taken a cue from Apache Polaris's automated release
pipeline and put together a PR for Apache Parquet Java:

Issue: https://github.com/apache/parquet-java/issues/3547
PR: https://github.com/apache/parquet-java/pull/3548

The basic idea is to leverage Apache-owned SVN, Nexus, and GPG keys as
secrets in GitHub Actions. The release manager's workflow becomes:

Prepare RC — Run the "Prepare Release Candidate" GitHub Action
Vote — Send the generated vote email and monitor the vote
If passing — Run the "Publish Release" GitHub Action
If failing — Run the "Cancel Release Candidate" GitHub Action
Each action defaults to dry-run mode, and the scripts can also be run
locally outside of GitHub Actions.

What's missing before we can fully test this is filing a few Apache Infra
tickets to get the proper secrets (Nexus, SVN, GPG) configured on the
parquet-java repository. I'm happy to file those if folks are on board with
the general approach. I've tested what I can locally with dry runs, but a
real end-to-end test will require those secrets to be in place.

Feedback and reviews welcome!

Thanks, Russell

Reply via email to