From 83ef32c838f9e08dec8f60c86146d39d45a38f0a Mon Sep 17 00:00:00 2001 From: Damien Retzinger Date: Thu, 14 May 2026 17:25:52 -0400 Subject: [PATCH] ci: remove awkward commit requirements for graduating releases --- .github/workflows/release-please.yml | 70 ++-------------------------- release-please-config.graduate.json | 19 ++++++++ 2 files changed, 22 insertions(+), 67 deletions(-) create mode 100644 release-please-config.graduate.json diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index be9dcbf..f6b9cfe 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -7,21 +7,20 @@ on: workflow_dispatch: inputs: release-mode: - description: 'auto = follow conventional commits; rc = bump the rc suffix; stable = open a PR that graduates the current rc to a stable release.' + description: 'auto = follow conventional commits; rc = bump the rc suffix; graduate = graduate the current rc to a stable release.' type: choice required: false default: auto options: - auto - rc - - stable + - graduate env: RELEASE_BRANCH: release-please--branches--main--components--github-actions-magento2 jobs: release-please: - if: github.event_name != 'workflow_dispatch' || inputs.release-mode != 'stable' runs-on: ubuntu-latest permissions: contents: write @@ -32,7 +31,7 @@ jobs: uses: googleapis/release-please-action@v4 with: token: ${{ secrets.GRAYCORE_GITHUB_TOKEN }} - config-file: ${{ inputs.release-mode == 'rc' && 'release-please-config.rc.json' || 'release-please-config.json' }} + config-file: ${{ inputs.release-mode == 'rc' && 'release-please-config.rc.json' || (inputs.release-mode == 'graduate' && 'release-please-config.graduate.json' || 'release-please-config.json') }} - name: Check if release branch exists id: branch-check @@ -85,69 +84,6 @@ jobs: git commit -m "chore: pin internal action refs to ${{ steps.pin-refs.outputs.VERSION }}" git push origin ${{ env.RELEASE_BRANCH }} - graduate: - if: github.event_name == 'workflow_dispatch' && inputs.release-mode == 'stable' - runs-on: ubuntu-latest - permissions: - contents: write - pull-requests: write - steps: - - uses: actions/checkout@v6 - with: - ref: main - token: ${{ secrets.GRAYBOT_PIN_BACK_PAT }} - - - name: Compute graduate version - id: graduate - run: | - CURRENT=$(jq -r '."."' .release-please-manifest.json) - STABLE="${CURRENT%%-*}" - if [ "$CURRENT" = "$STABLE" ]; then - echo "::error::Manifest version ${CURRENT} has no prerelease suffix; nothing to graduate." - exit 1 - fi - echo "CURRENT=${CURRENT}" >> $GITHUB_OUTPUT - echo "STABLE=${STABLE}" >> $GITHUB_OUTPUT - - - name: Open graduate PR - env: - GRAYBOT_GPG_KEY: ${{ secrets.GRAYBOT_GPG_KEY }} - GH_TOKEN: ${{ secrets.GRAYBOT_PIN_BACK_PAT }} - CURRENT: ${{ steps.graduate.outputs.CURRENT }} - STABLE: ${{ steps.graduate.outputs.STABLE }} - run: | - echo "$GRAYBOT_GPG_KEY" | gpg --batch --import - export GPG_KEY_ID=$(gpg --list-secret-keys --keyid-format LONG | grep sec | awk '{print $2}' | cut -d/ -f2) - git config --global user.signingkey $GPG_KEY_ID - git config --global commit.gpgSign true - git config --global user.email "automation@graycore.io" - git config --global user.name "Beep Boop" - BRANCH="chore/graduate-v${STABLE}" - git checkout -b "$BRANCH" - git commit --allow-empty \ - -m "chore: graduate ${CURRENT} to ${STABLE}" \ - -m "Release-As: ${STABLE}" - git push --force origin "$BRANCH" - EXISTING=$(gh pr list --head "$BRANCH" --json number --jq '.[0].number // empty') - PR_BODY=$(cat <