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

krogon/semver-release-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace
 
 

Repository files navigation

Semver Release Github Action badge

Fork information

Based on https://github.com/K-Phoen/semver-release-action

Additions:

  • default_increment - default increment bump when label is not found, default "skip"
  • tag_format - allows to use prefix/suffix in the format to manage separate components in monorepo

Description

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).

default_increment

Required Default increment (skip/patch/minor/major). Default "skip".

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

# .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: krogon/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.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 86.6%
  • Shell 8.8%
  • Makefile 3.1%
  • Dockerfile 1.5%