This action extracts the process of creating a release to github from Changesets Release Action
.
This allows for release whenever you want.
- format: Release tag format. Choose one of these. (Default:
prefix
.)- full:
[email protected]
- major:
v1
- prefix
v1.0.0
- simple
1.0.0
- full:
- target: Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. (Default: the repository's default branch.)
- tag: Release tag. (Example:
v1.0.0
)
This is an example of a release workflow that works when a PR issued by Changesets Release Action
is merged.
The Changesets Release Action
must be configured to work in a separate workflow.
name: Release
on:
pull_request_target:
types:
- closed
branches:
- main
concurrency: ${{ github.workflow }}-${{ github.ref }}
jobs:
release:
name: release
permissions:
contents: write
if: github.event.pull_request.merged == true && startsWith(github.head_ref, 'changeset-release/main')
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Release
run: 108yen/changeset-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
name: Release
on:
pull_request_target:
types:
- closed
branches:
- main
concurrency: ${{ github.workflow }}-${{ github.ref }}
jobs:
release:
name: release
permissions:
contents: write
if: github.event.pull_request.merged == true && startsWith(github.head_ref, 'changeset-release/main')
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Release
id: release
run: 108yen/changeset-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Display Tag
run: echo '${{ steps.release.outputs.tag }}'