feat(ci): Add a "verify release" action + workflow to the pipeline (#8929)

Co-authored-by: matt korwel <matt.korwel@gmail.com>
This commit is contained in:
Richie Foreman
2025-09-22 16:30:42 -03:00
committed by GitHub
parent 710e00e02d
commit 93e022cee5
6 changed files with 180 additions and 25 deletions
+31 -3
View File
@@ -36,6 +36,10 @@ inputs:
description: 'The working directory to run the steps in.'
required: false
default: '.'
force-skip-tests:
description: 'Skip tests and validation'
required: false
default: false
runs:
using: 'composite'
@@ -107,7 +111,7 @@ runs:
npm publish \
--dry-run="${{ inputs.dry-run }}" \
--workspace="@google/gemini-cli-core" \
--tag="${{ inputs.npm-tag }}"
--no-tag
- name: '🔗 Install latest core package'
working-directory: '${{ inputs.working-directory }}'
@@ -127,7 +131,31 @@ runs:
npm publish \
--dry-run="${{ inputs.dry-run }}" \
--workspace="@google/gemini-cli" \
--tag="${{ inputs.npm-tag }}"
--no-tag
- name: '🔬 Verify NPM release by version'
uses: './.github/actions/verify-release'
if: "${{ inputs.dry-run == 'false' && inputs.force-skip-tests == 'false' }}"
with:
npm-package: '@google/gemini-cli@${{ inputs.release-version }}'
expected-version: '${{ inputs.release-version }}'
ref: '${{ steps.release_branch.outputs.BRANCH_NAME }}'
- name: '🏷️ Tag release'
uses: './.github/actions/tag-npm-release'
if: "${{ inputs.dry-run == 'false' }}"
with:
channel: '${{ inputs.npm-tag }}'
version: '${{ inputs.release-version }}'
dry-run: '${{ inputs.dry-run }}'
wombat-token-core: '${{ inputs.wombat-token-core }}'
wombat-token-cli: '${{ inputs.wombat-token-cli }}'
- name: 'Install deps'
working-directory: '${{ inputs.working-directory }}'
shell: 'bash'
run: |
npm install
- name: '🎁 Bundle'
working-directory: '${{ inputs.working-directory }}'
@@ -137,7 +165,7 @@ runs:
- name: '🎉 Create GitHub Release'
working-directory: '${{ inputs.working-directory }}'
if: "${{ inputs.dry-run == 'false' && inputs.skip-github-release == 'false' }}"
if: "${{ inputs.dry-run == 'false' && inputs.skip-github-release == 'false' && inputs.npm-tag != 'dev' }}"
env:
GITHUB_TOKEN: '${{ inputs.github-token }}'
shell: 'bash'