From 1c73868acb20a5cbea4339afd88111d8cf5ad262 Mon Sep 17 00:00:00 2001 From: James Maes Date: Tue, 13 Oct 2026 14:31:03 -0500 Subject: [PATCH] ci: automate RC releases; hotfix/* pushes no longer publish Removes publish_hotfix_release: a hotfix/* branch push published a GA release to Maven Central with no tag or review (QRun-IO/qbit-cdn#12, QRun-IO/qqq#1121). hotfix/* branches now run test_only; a hotfix release publishes from a reviewed vX.Y.Z tag through publish_release. Adds .github/workflows/release-rc.yml (reusable QRun-IO/.github qbit-release-rc): a manual dispatch, or merging a develop PR labelled release:rc, merges develop into the release line and the release/* push runs the existing CircleCI RC publish. Co-Authored-By: Claude Opus 5.5 --- .circleci/config.yml | 14 +------------- .github/workflows/release-rc.yml | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 13 deletions(-) create mode 100644 .github/workflows/release-rc.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 309083a..32d4885 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -23,7 +23,7 @@ workflows: context: [ qqq-maven-registry-credentials ] filters: branches: - ignore: /(develop|release/.*|hotfix/.*|integration.*)/ + ignore: /(develop|release/.*|integration.*)/ tags: only: [] @@ -63,15 +63,3 @@ workflows: ignore: /.*/ tags: only: [ /^v\d+\.\d+\.\d+$/ ] - - publish_hotfix_release: - jobs: - - qqq-orb/mvn_publish: - pre-steps: - - configure-package-install - context: [ qqq-maven-registry-credentials ] - branch_type: hotfix - filters: - branches: - only: - - /hotfix\/.*/ diff --git a/.github/workflows/release-rc.yml b/.github/workflows/release-rc.yml new file mode 100644 index 0000000..dd332a0 --- /dev/null +++ b/.github/workflows/release-rc.yml @@ -0,0 +1,25 @@ +# Cut the next release candidate (QRun-IO/qqq docs/QRUN-QBIT-REPO-STANDARD.md, C6): +# run this workflow by hand, or merge a develop PR labelled `release:rc`. It merges develop into +# the release line and the release/* push runs CircleCI publish_release_candidate. +name: Release candidate + +on: + workflow_dispatch: + inputs: + dry_run: + description: Print the plan without merging or creating branches + type: boolean + default: false + pull_request: + types: [closed] + branches: [develop] + +permissions: + contents: write + +jobs: + release-rc: + if: github.event_name == 'workflow_dispatch' || (github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'release:rc')) + uses: QRun-IO/.github/.github/workflows/qbit-release-rc.yml@main + with: + dry_run: ${{ github.event_name == 'workflow_dispatch' && inputs.dry_run }} -- 2.54.0