feat(release-rc): tag and release each RC after Maven Central confirms it #2

Merged
KofTwentyTwo merged 1 commits from feature/rc-tag-and-release into main 2026-10-16 13:02:27 +00:00
KofTwentyTwo commented 2026-10-15 21:17:39 +00:00 (Migrated from github.com)

Label-triggered release:rc RCs were published to Maven Central without a tag or GitHub release (qbit-alerts 0.1.0-RC.13/14, qbit-edi 0.1.0-RC.8 on 2026-10-15). This adds a tag-and-release job to the shared qbit-release-rc.yml:

  1. Waits (up to ~100 min) for the orb's Bump version to X [skip ci] commit after this run's merge.
  2. Waits for X on Maven Central and checks provenance: the pom's Last-Modified must be after this merge; otherwise it fails and does not tag (the qbit-quick-search 1.1.0-RC.11 mis-tag case).
  3. Creates the signed annotated tag vX on the bump commit using an SSH signing key from the QRUN_TAG_SIGNING_KEY secret. No key, no tag (never unsigned).
  4. Creates a GitHub prerelease listing the PRs merged since the previous tag.

Skips if the tag already exists. Repos with a read-only CircleCI key get no orb bump commit, so the job fails with a clear message and the release captain tags those.

Rollout needs: (a) the owner to add an org secret QRUN_TAG_SIGNING_KEY (SSH signing key registered on the tagging GitHub account); (b) each qbit's release-rc.yml caller to add secrets: inherit (one PR per repo, coming). actionlint passes.

🤖 Generated with Claude Code

Label-triggered `release:rc` RCs were published to Maven Central without a tag or GitHub release (qbit-alerts 0.1.0-RC.13/14, qbit-edi 0.1.0-RC.8 on 2026-10-15). This adds a `tag-and-release` job to the shared `qbit-release-rc.yml`: 1. Waits (up to ~100 min) for the orb's `Bump version to X [skip ci]` commit after this run's merge. 2. Waits for X on Maven Central and checks **provenance**: the pom's Last-Modified must be after this merge; otherwise it fails and does not tag (the qbit-quick-search 1.1.0-RC.11 mis-tag case). 3. Creates the **signed** annotated tag `vX` on the bump commit using an SSH signing key from the `QRUN_TAG_SIGNING_KEY` secret. No key, no tag (never unsigned). 4. Creates a GitHub prerelease listing the PRs merged since the previous tag. Skips if the tag already exists. Repos with a read-only CircleCI key get no orb bump commit, so the job fails with a clear message and the release captain tags those. **Rollout needs:** (a) the owner to add an org secret `QRUN_TAG_SIGNING_KEY` (SSH signing key registered on the tagging GitHub account); (b) each qbit's `release-rc.yml` caller to add `secrets: inherit` (one PR per repo, coming). `actionlint` passes. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.