Repository navigation
Publish Maven Central releases through the Publisher Portal API - #668
Conversation
The release path uploaded files one by one through the legacy ossrh-staging-api compatibility service and then handed the staging repository to the Portal. Sonatype asked projects to move to the Publisher API. Upload the signed bundle zip with POST /api/v1/publisher/upload as a USER_MANAGED deployment, then poll status as before. Publishing is still a manual step in the Portal UI. The staging profile id has no meaning in the Publisher API, so drop the profile-id input and option added in #652. Rewrite the Maven Central integration test around the new flow. Its mock curl did not honor -o and -w, so the test already failed on main. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
|
Copy of #665 |
paul-aiyedun
left a comment
There was a problem hiding this comment.
@ramakrishnap-nv Changes look good to me. Can you please do an end-to-end using NVIDIA/cuopt#2195?
|
Could we temporarily push this to In "Determine publish destination", force the Central path: - if rapids-is-release-build; then
+ if true; then # TEMP: remove before mergecuOpt would call it with |
| - name: Determine publish destination | ||
| id: destination | ||
| run: | | ||
| if rapids-is-release-build; then |
There was a problem hiding this comment.
| # if rapids-is-release-build; then | |
| if true; then |
To test the workflow without create release build.
|
End-to-end test with the temporary commit (42dc26b) completed successfully: https://github.com/NVIDIA/cuopt/actions/runs/40539658926/job/122331223114 The signed bundle was uploaded to the Portal, reached |
paul-aiyedun
left a comment
There was a problem hiding this comment.
Changes look good to me.
|
/merge |
#2195) Drops the vendored `maven-publish` workflow and scripts and calls the shared workflow from `rapidsai/shared-workflows@main`, which now publishes through the Central Publisher Portal API (rapidsai/shared-workflows#668). The legacy `ossrh-staging-api` is being retired. Also removes the `profile-id` input. Testing: ran the shared workflow (#668 plus a temporary forced-release commit) from a PR build against the real Portal. It reached `VALIDATED` and was dropped, nothing published: https://github.com/NVIDIA/cuopt/actions/runs/40539658926. Temp changes reverted. Tag-triggered publish not exercised. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com> Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Sonatype asked projects to move from the legacy
ossrh-staging-apito the Publisher API. This changes the Maven Central release path.POST /api/v1/publisher/uploadas aUSER_MANAGEDdeployment, then polled untilVALIDATED. Publishing is still a manual step in the Portal UI.profile-idinput and option from Decouple OSSRH staging profile from Maven groupId #652 are removed, since the Publisher API has no staging profile. cuOpt was the only caller using it.curldid not honor-oand-w, so it already failed onmain.The snapshot path already uses the Portal snapshot repository and is unchanged.
Tested with the integration test (upload, auto-drop on and off, upload failure,
FAILEDvalidation). Not yet run against the real Portal. This also changes cudf's release path, so it should be exercised on a real release before merging.Mirrors NVIDIA/cuopt#2195, which carries the same change in its vendored copy of this workflow.
🤖 Generated with Claude Code