RussellSpitzer opened a new pull request, #3895:
URL: https://github.com/apache/parquet-java/pull/3895

   ### Rationale for this change
   
   `prepare-rc.sh` deploys with a plain `mvn deploy`, lets Nexus implicitly 
create a staging repository, and then guesses which open repository in the 
`org.apache.parquet` profile was created. This PR switches to using an explicit 
repository creation which returns the exact repo-id we need to validate. 
   
   Note: We don't need to do anything for Cancel or Release scripts since they 
already require the repo-id. Prepare is the only step which currently makes the 
repository without being sure which one it made.
   
   ### What changes are included in this PR?
   
   ####  Maven Changes
    - Adds `nexus-staging-maven-plugin` 1.7.0 to the `apache-release` profile 
with extensions enabled. Replacing `maven-deploy-plugin` for `mvn deploy` under 
that profile
   
   #### Automation Script Changes
   - `prepare-rc.sh` passes `-DstagingDescription="Apache Parquet <version> 
RC<n>"` and validates using the repository id (no check for a single repository 
or fail check)
   - If the deploy fails, or the ID cannot be read, the script names the 
repositories it created by reading the `Created staging repository with ID` 
lines from `target/nexus-deploy.log`
   - Removes `nexus_find_open_staging_repo` (and its one-open-repo guard) and 
`nexus_close_staging_repo`, which have no remaining callers.
   
   ### Are these changes tested?
   
   Yes.
   
   - New bats tests
   - I used my personal Apache credentials to do a test of the script  using a 
throwaway `0.0.0-test` version
   
   ### Are there any user-facing changes?
   
   For release managers only. `release:perform` also activates the 
`apache-release` profile, so a manual release now stages through the plugin too:
   
   - `release:perform` closes the staging repository itself, so the manual 
"Close" step in Nexus is no longer needed.
   - To give the repository the description the release scripts expect, pass it 
through: `./mvnw release:perform -DskipTests -Darguments="-DskipTests 
-DstagingDescription='Apache Parquet <version> RC<n>'"`.
   - The repository ID for the vote email is printed in the Maven output.
   
   Steps 2 and 3 of the [release 
guide](https://parquet.apache.org/docs/contribution-guidelines/releasing/) need 
a follow-up update in the parquet-site repository.
   
   Closes #3894
   
   🤖 Generated in tandem with [Claude Code](https://claude.com/claude-code)
   
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to