Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/k-phoen/semver-release-action
GitHub Action to automatically create SemVer compliant releases based on PR labels.
https://github.com/k-phoen/semver-release-action
action github github-actions release semver
Last synced: 4 days ago
JSON representation
GitHub Action to automatically create SemVer compliant releases based on PR labels.
- Host: GitHub
- URL: https://github.com/k-phoen/semver-release-action
- Owner: K-Phoen
- License: mit
- Created: 2019-09-27T18:39:00.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-02-15T22:24:13.000Z (11 months ago)
- Last Synced: 2024-09-19T19:31:28.287Z (3 months ago)
- Topics: action, github, github-actions, release, semver
- Language: Go
- Homepage:
- Size: 63.5 KB
- Stars: 85
- Watchers: 3
- Forks: 38
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Semver Release Github Action ![](https://github.com/K-Phoen/semver-release-action/workflows/CI/badge.svg)
Automatically create [SemVer](https://semver.org/) compliant releases based on
PR labels.Assuming that a PR is tagged with a "*semver-compliant*" label (*patch*, *minor* or *major*),
then this action can create a tag and a GitHub release when it is merged.**Note:** to determine the base tag for the increment, this action will try to
find the most recent tag complying to [SemVer](https://semver.org/). No
additional setup is required.## Inputs
### `release_branch`
**Required** Branch to tag. Default `"master"`.
### `release_strategy`
**Required** Release strategy. Default `"release"` (`release`: creates a GitHub
release ; `tag`: creates a lightweight tag ; `none`: computes the next
[SemVer](https://semver.org/) version but does not create a release or tag).### `tag_format`
**Optional** Format used to create tags. Default `"v%major%.%minor%.%patch%"`.
### `tag`
**Optional** Tag to use. If left undefined, it will be computed using the tags
already present in the repository.## Outputs
### `tag`
The newly created tag.
## Example usage
```yaml
# .github/workflows/release.yml
name: Releaseon:
pull_request:
types: [closed]jobs:
build:
runs-on: ubuntu-latestif: github.event.pull_request.merged
steps:
- name: Tag
uses: K-Phoen/semver-release-action@master
with:
release_branch: master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}```
## License
This library is under the [MIT](LICENSE.md) license.