Release (#69) #26
This file contains hidden or 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: Release Drafter | |
on: | |
push: | |
# branches to consider in the event; optional, defaults to all | |
branches: | |
- main | |
jobs: | |
update_release_draft: | |
permissions: | |
# write permission is required to create a github release | |
contents: write | |
# write permission is required for autolabeler | |
# otherwise, read permission is required at least | |
pull-requests: write | |
runs-on: ubuntu-latest | |
steps: | |
# (Optional) GitHub Enterprise requires GHE_HOST variable set | |
#- name: Set GHE_HOST | |
# run: | | |
# echo "GHE_HOST=${GITHUB_SERVER_URL##https:\/\/}" >> $GITHUB_ENV | |
# Drafts your next Release notes as Pull Requests are merged into "master" | |
- uses: release-drafter/release-drafter@v5 | |
# (Optional) specify config name to use, relative to .github/. Default: release-drafter.yml | |
with: | |
config-name: release-drafter.yml | |
# disable-autolabeler: true | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
release: | |
name: Release | |
runs-on: ubuntu-latest | |
needs: update_release_draft | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
# Need full history for changesets | |
fetch-depth: 0 | |
- name: Setup Node 22 | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 22 | |
registry-url: 'https://registry.npmjs.org' | |
- name: Install yarn | |
run: corepack enable | |
- name: Set yarn version to latest stable | |
run: corepack prepare yarn@stable --activate | |
- name: Install dependencies | |
run: yarn install --immutable | |
- name: Create Release Pull Request or Publish to npm | |
id: changesets | |
uses: changesets/action@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Publish | |
if: steps.changesets.outputs.hasChangesets == 'false' | |
# You can do something when a publish should happen. | |
run: yarn release | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |