Skip to content

Prepare RC: use the repositories API to verify staged artifacts - #3794

Merged
rdblue merged 1 commit into
apache:masterfrom
RussellSpitzer:fix/staging-artifact-check-url
Sep 14, 2026
Merged

rdblue merged 1 commit into
apache:masterfrom
RussellSpitzer:fix/staging-artifact-check-url

Conversation

@RussellSpitzer

Copy link
Copy Markdown
Member

Rationale for this change

We were validating the Staging artifacts behind the wrong URL. This was causing the verification post push to fail.

What changes are included in this PR?

URL was corrected

Are these changes tested?

Yes! Because i have access to Nexus independently I checked that both the new urls worked and I verified that our cancel action worked.

Are there any user-facing changes?

No

nexus_check_staging_artifact built URLs under /content/repositories/<id>/,
which does not serve open staging repositories. The check therefore failed
for every RC: prepare-rc.sh runs it before closing, so the repo is always
open at that point. 1.19.0-rc8 aborted this way even though the staging
repo was correct and complete.

Confirmed by probing repository.apache.org: /content/repositories/<id>/...
returned 404 anonymously, with a committer user token, and with the
deployer service account, while /service/local/repositories/<id>/content/...
returned 200. Closing the repo by hand flipped /content/repositories/ to
200, confirming it only serves closed repos.

Switch to the repositories API, which serves a staging repo in both states.
That matters because this function has call sites on both sides of the
close: prepare-rc.sh checks pre-close (open), while cancel-rc.sh and
publish-release.sh reach it via nexus_verify_staging_repo post-close
(closed). Neither of those had run against real Nexus, so both carried
the same latent failure.

Verified against a live staging repo in both states, and end-to-end by
running cancel-rc.sh against a closed repo, which also exercised
nexus_get_staging_repo_metadata and nexus_drop_staging_repo for the
first time.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@rdblue
rdblue merged commit 7a9665a into apache:master Sep 14, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants