https://github.com/108yen/changeset-release
This GitHub Action is an extract of the GitHub release creation process from the changesets GitHub Action.
https://github.com/108yen/changeset-release
changesets github-actions release-automation
Last synced: 11 months ago
JSON representation
This GitHub Action is an extract of the GitHub release creation process from the changesets GitHub Action.
- Host: GitHub
- URL: https://github.com/108yen/changeset-release
- Owner: 108yen
- License: mit
- Created: 2024-10-02T12:27:44.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-24T05:30:54.000Z (over 1 year ago)
- Last Synced: 2024-10-24T23:35:07.880Z (over 1 year ago)
- Topics: changesets, github-actions, release-automation
- Language: TypeScript
- Homepage:
- Size: 1.09 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# 108yen/changeset-release
This action extracts the process of creating a release to github from [`Changesets Release Action`](https://github.com/changesets/action).
This allows for release whenever you want.
## Usage
### Inputs
- format: Release tag format. Choose one of these. (Default: `prefix`.)
- full: `package@1.0.0`
- major: `v1`
- prefix `v1.0.0`
- simple `1.0.0`
- 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.)
### Outputs
- tag: Release tag. (Example: `v1.0.0`)
### Example workflow
This is an example of a release workflow that works when a PR issued by [`Changesets Release Action`](https://github.com/changesets/action) is merged.
The [`Changesets Release Action`](https://github.com/changesets/action) must be configured to work in a separate workflow.
```yml
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 }}
```
### Example of using output
```yml
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 }}'
```