Skip to content

GitHub Action to automatically create SemVer compliant releases based on PR labels.

License

Notifications You must be signed in to change notification settings

colossyan/semver-release-action

 
 

Repository files navigation

Semver Release Github Action

Automatically create SemVer 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. 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 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.

default_increment

Optional Default increment, if no valid labels found.

Outputs

tag

The newly created tag.

Example usage

# .github/workflows/release.yml
name: Release

on:
  pull_request:
    types: [closed]

jobs:
  build:
    runs-on: ubuntu-latest

    if: 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.

About

GitHub Action to automatically create SemVer compliant releases based on PR labels.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 86.3%
  • Shell 8.2%
  • Makefile 3.7%
  • Dockerfile 1.8%