semantic-version/action.yml
Paul Hatcherian 31f4e3fdf0 Rewrite/refactor for v5, migrate to TypeScript (MAJOR)
Set Jest config file in package script

Include module path

Include tests in project folders

Remove index module exports

Hardcode configuration parameters

Move parameter binding into main run function

Use alias imports

Run test sequentially

Remove cleanup (async conflict)

Revert Jest option

Increase test timeout to 15 seconds
2022-04-03 20:28:28 -04:00

62 lines
No EOL
2.4 KiB
YAML

name: "Git Semantic Version"
description: "Determines version of a repo based on git history"
branding:
icon: "layers"
color: "blue"
inputs:
branch:
description: "Set to specify a specific branch, default is the current HEAD"
required: true
default: "HEAD"
tag_prefix:
description: "The prefix to use to identify tags"
required: false
default: "v"
major_pattern:
description: "A string which, if present in a git commit, indicates that a change represents a major (breaking) change. Wrap with '/' to match using a regular expression."
required: true
default: "(MAJOR)"
minor_pattern:
description: "A string which, if present in a git commit, indicates that a change represents a minor (feature) change. Wrap with '/' to match using a regular expression."
required: true
default: "(MINOR)"
version_format:
description: "Pattern to use when formatting output version"
required: true
default: "${major}.${minor}.${patch}"
change_path:
description: "Path to check for changes. If any changes are detected in the path the 'changed' output will true. Enter multiple paths separated by spaces."
required: false
namespace:
description: "Use to create a named sub-version. This value will be appended to tags created for this version."
required: false
bump_each_commit:
description: "If true, every commit will be treated as a bump to the version."
required: true
default: "false"
search_commit_body:
description: "If true, the body of commits will also be searched for major/minor patterns to determine the version type."
required: true
default: "false"
user_format_type:
description: "The output method used to generate list of users, 'csv' or 'json'. Default is 'csv'."
required: true
default: "csv"
outputs:
major:
description: "Current major number"
minor:
description: "Current minor number"
patch:
description: "Current patch number"
increment:
description: "An additional value indicating the number of commits for the current version"
version:
description: "The version result, in the format {major}.{minor}.{patch}"
version_tag:
description: "The version tag"
changed:
description: "Indicates whether there was a change since the last version if change_path was specified. If no change_path was specified this value will always be true since the entire repo is considered."
runs:
using: "node16"
main: "dist/index.js"