Change Prerelease Tag #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Change Prerelease Tag | |
on: | |
workflow_dispatch: | |
inputs: | |
branch: | |
description: "Branch name" | |
type: string | |
default: "release-" | |
required: true | |
tag: | |
description: "New tag name" | |
type: string | |
default: "rc" | |
required: true | |
jobs: | |
change_prerelease_tag: | |
name: Changesets Update Prerelease Tag | |
runs-on: ubuntu-latest | |
# Allow GITHUB_TOKEN to have write permissions | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/create-github-app-token@v1 | |
id: github-actions-bot-app-token | |
with: | |
app-id: 819772 | |
private-key: ${{ secrets.APOLLO_GITHUB_ACTIONS_BOT_PRIVATE_KEY }} | |
# Check out the repository, using the Github Actions Bot app's token so | |
# that we can push later. | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
with: | |
token: ${{ steps.github-actions-bot-app-token.outputs.token }} | |
# Checkout release branch entered when workflow was kicked off | |
ref: ${{ github.event.inputs.branch }} | |
# Fetch entire git history so Changesets can generate changelogs | |
# with the correct commits | |
fetch-depth: 0 | |
- name: Setup Node.js 20.x | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: Write latest version to package.json and package-lock.json | |
run: | | |
version=$(npm show @apollo/client version) | |
npm pkg set version="$version" | |
npm i | |
- name: Update prerelease tag in .changeset/pre.json | |
uses: restackio/[email protected] | |
with: | |
file: .changeset/pre.json | |
fields: '{"tag": "${{github.event.inputs.tag}}"}' | |
- uses: stefanzweifel/git-auto-commit-action@v5 | |
with: | |
commit_message: Prepare for ${{ github.event.inputs.tag }} release | |
# must manually set these values since the defaults come from | |
# the workflow_dispatch event which does not contain the email | |
# for the user dispatching the event which breaks the CLA check | |
commit_user_name: github-actions[bot] | |
commit_user_email: 41898282+github-actions[bot]@users.noreply.github.com | |
commit_author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | |
# Commit these changes to the branch workflow is running against | |
branch: ${{ github.event.inputs.branch }} |