Original projects: action-bumpr, update-semver.
action-bumper bumps semantic version tag on merging Pull Requests with specific labels (bumper:major
,bumper:minor
,bumper:patch
, bumper:none
), and creates semver tags on tag push.
Important
This repository uses the Conventional Commits.
For more information please see the Conventional Commits documentation.
Important
This repository uses the pre-commit.
Please be respectful while contributing and after cloning this repo install the pre-commit hooks.
> pre-commit install --install-hooks -t pre-commit -t commit-msg
For more information please see the pre-commit documentation.
Name | Description | Default | Required |
---|---|---|---|
bump_default_level | Default bump level if labels are not attached [major, minor, patch, none]. Do nothing if it's empty | false | |
bump_fail_if_no_level | Fail if no bump label is found | false | false |
bump_include_v | Include v prefix in tag |
true | false |
bump_latest | Add latest tag |
false | false |
bump_major | Label name for major bump (bumper:major) | bumper:major | false |
bump_minor | Label name for minor bump (bumper:minor) | bumper:minor | false |
bump_none | Label name for no bump (bumper:none) | bumper:none | false |
bump_patch | Label name for patch bump (bumper:patch) | bumper:patch | false |
bump_semver | Whether to updates major/minor release tags on a tag push. e.g. Update v1 and v1.2 tag when released v1.2.3 |
false | false |
bump_tag_as_email | Email address to use when creating tags | false | |
bump_tag_as_user | Name to use when creating tags | false | |
github_token | GITHUB_TOKEN to list pull requests and create tags | ${{ github.token }} | true |
Name | Description |
---|---|
current_version | current version |
next_version | next version |
skip | True if release is skipped. e.g. No labels attached to PR. |
message | Tag message |
on:
push:
branches:
- main
pull_request:
branches:
- main
types:
- labeled
- unlabeled
- opened
- reopened
- synchronize
permissions:
pull-requests: write
contents: write
jobs:
tag_bumper:
runs-on: ubuntu-latest
env:
INETUM_POLAND_ACTION_BUMPER_DEBUG: ${{ vars.INETUM_POLAND_ACTION_BUMPER_DEBUG }}
INETUM_POLAND_ACTION_BUMPER_TRACE: ${{ vars.INETUM_POLAND_ACTION_BUMPER_TRACE }}
steps:
- uses: hmarr/debug-action@v3
- uses: actions/checkout@v4
- uses: jwalton/gh-find-current-pr@v1
id: finder
with:
state: all
- id: bumper
uses: ./
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
bump_fail_if_no_level: true
bump_semver: true
bump_latest: true
- uses: marocchino/sticky-pull-request-comment@v2
if: always() && (steps.bumper.outputs.tag_status != null) && (steps.finder.outputs.pr != null)
with:
header: action-bumper
number: ${{ steps.finder.outputs.pr }}
message: ${{ steps.bumper.outputs.tag_status }}
action-bumper uses push on main event to run workflow instead of pull_request closed (merged) event because github token doesn't have write permission for pull_request from fork repository.
Copyright (c) 2024 Inetum Poland.