Add version tag output (MINOR)

This commit is contained in:
Paul Hatcherian 2020-09-05 05:36:03 -04:00
parent 7f624e6710
commit 917165076c
3 changed files with 30 additions and 6 deletions

View file

@ -13,11 +13,11 @@ inputs:
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"
description: "A string which, if present in a git commit, indicates that a change represents a major (breaking) change"
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"
description: "A string which, if present in a git commit, indicates that a change represents a minor (feature) change"
required: true
default: "(MINOR)"
format:
@ -41,6 +41,8 @@ outputs:
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 result with trailing zeros removed"
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:

15
dist/index.js vendored
View file

@ -982,20 +982,31 @@ const setOutput = (major, minor, patch, increment, changed, branch, namespace) =
version += `-${namespace}`
}
const tag = tagPrefix + version;
let tag;
if (major === 0 || patch !== 0) {
// Always tag pre-release/major version 0 as full version
tag = `${tagPrefix}${major}.${minor}.${patch}`;
} else if (minor !== 0) {
tag = `${tagPrefix}${major}.${minor}`;
} else {
tag = `${tagPrefix}${major}`;
}
const repository = process.env.GITHUB_REPOSITORY;
core.info(`Version is ${major}.${minor}.${patch}+${increment}`);
if (repository !== undefined) {
if (repository !== undefined && !namespace) {
core.info(`To create a release for this version, go to https://github.com/${repository}/releases/new?tag=${tag}&target=${branch.split('/').reverse()[0]}`);
}
core.setOutput("version", version);
core.setOutput("major", major.toString());
core.setOutput("minor", minor.toString());
core.setOutput("patch", patch.toString());
core.setOutput("increment", increment.toString());
core.setOutput("changed", changed.toString());
core.setOutput("version_tag", tag);
};
async function run() {

View file

@ -36,20 +36,31 @@ const setOutput = (major, minor, patch, increment, changed, branch, namespace) =
version += `-${namespace}`
}
const tag = tagPrefix + version;
let tag;
if (major === 0 || patch !== 0) {
// Always tag pre-release/major version 0 as full version
tag = `${tagPrefix}${major}.${minor}.${patch}`;
} else if (minor !== 0) {
tag = `${tagPrefix}${major}.${minor}`;
} else {
tag = `${tagPrefix}${major}`;
}
const repository = process.env.GITHUB_REPOSITORY;
core.info(`Version is ${major}.${minor}.${patch}+${increment}`);
if (repository !== undefined) {
if (repository !== undefined && !namespace) {
core.info(`To create a release for this version, go to https://github.com/${repository}/releases/new?tag=${tag}&target=${branch.split('/').reverse()[0]}`);
}
core.setOutput("version", version);
core.setOutput("major", major.toString());
core.setOutput("minor", minor.toString());
core.setOutput("patch", patch.toString());
core.setOutput("increment", increment.toString());
core.setOutput("changed", changed.toString());
core.setOutput("version_tag", tag);
};
async function run() {