input tag in commit message detection

This commit is contained in:
phips28 2021-07-01 21:53:38 +02:00
parent 261e9bdd0e
commit b8b23f67d5
2 changed files with 17 additions and 16 deletions

View File

@ -1,36 +1,36 @@
name: "Bump Version"
name: 'Bump Version'
on:
push:
branches:
- "master"
- 'master'
jobs:
bump-version:
name: "Bump Version on master"
name: 'Bump Version on master'
runs-on: ubuntu-latest
steps:
- name: "Checkout source code"
uses: "actions/checkout@v2"
- name: 'Checkout source code'
uses: 'actions/checkout@v2'
with:
ref: ${{ github.ref }}
- name: "cat package.json"
- name: 'cat package.json'
run: cat ./package.json
- name: "Setup Node.js"
uses: "actions/setup-node@v1"
- name: 'Setup Node.js'
uses: 'actions/setup-node@v1'
with:
node-version: 12
- name: "Automated Version Bump"
- name: 'Automated Version Bump'
id: version-bump
uses: "phips28/gh-action-bump-version@master"
uses: 'phips28/gh-action-bump-version@test/tagPrefix'
with:
tag-prefix: 'v'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: "cat package.json"
- name: 'cat package.json'
run: cat ./package.json
- name: 'Output Step'
- name: 'Output Step'
env:
NEW_TAG: ${{ steps.version-bump.outputs.newTag }}
run: echo "new tag $NEW_TAG"

View File

@ -16,15 +16,16 @@ Toolkit.run(async (tools) => {
console.log("Couldn't find any commits in this event, incrementing patch version...");
}
const tagPrefix = process.env['INPUT_TAG-PREFIX'] || '';
const messages = event.commits ? event.commits.map((commit) => commit.message + '\n' + commit.body) : [];
const commitMessage = process.env['INPUT_COMMIT-MESSAGE'] || 'ci: version bump to {{version}}';
console.log('messages:', messages);
const commitMessageRegex = new RegExp(commitMessage.replace(/{{version}}/g, 'v\\d+\\.\\d+\\.\\d+'), 'ig');
const commitMessageRegex = new RegExp(commitMessage.replace(/{{version}}/g, `${tagPrefix}\\d+\\.\\d+\\.\\d+`), 'ig');
const isVersionBump = messages.find((message) => commitMessageRegex.test(message)) !== undefined;
if (isVersionBump) {
tools.exit.success('No action necessary!');
tools.exit.success('No action necessary because we found a previous bump!');
return;
}
@ -112,7 +113,7 @@ Toolkit.run(async (tools) => {
await tools.runInWorkspace('npm', ['version', '--allow-same-version=true', '--git-tag-version=false', current]);
console.log('current:', current, '/', 'version:', version);
let newVersion = execSync(`npm version --git-tag-version=false ${version}`).toString().trim().replace(/^v/, '');
newVersion = `${process.env['INPUT_TAG-PREFIX']}${newVersion}`;
newVersion = `${tagPrefix}${newVersion}`;
await tools.runInWorkspace('git', ['commit', '-a', '-m', commitMessage.replace(/{{version}}/g, newVersion)]);
// now go to the actual branch to perform the same versioning
@ -124,7 +125,7 @@ Toolkit.run(async (tools) => {
await tools.runInWorkspace('npm', ['version', '--allow-same-version=true', '--git-tag-version=false', current]);
console.log('current:', current, '/', 'version:', version);
newVersion = execSync(`npm version --git-tag-version=false ${version}`).toString().trim().replace(/^v/, '');
newVersion = `${process.env['INPUT_TAG-PREFIX']}${newVersion}`;
newVersion = `${tagPrefix}${newVersion}`;
console.log(`::set-output name=newTag::${newVersion}`);
try {
// to support "actions/checkout@v1"