From 788c495e2607702ce5ab41e9e246161d07fe8854 Mon Sep 17 00:00:00 2001 From: Corey Farrell Date: Mon, 18 May 2020 12:27:44 -0400 Subject: [PATCH] feat: Add `bump-minor-pre-major` option (#9) --- README.md | 11 ++++++----- action.yml | 3 +++ dist/index.js | 6 ++++-- index.js | 4 +++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 5f18f9a..9a1d8ab 100644 --- a/README.md +++ b/README.md @@ -34,11 +34,12 @@ Automate releases with Conventional Commit Messages. ## Configuration -| Variable | Description | -| --------------- | ------------------------------------------------ | -| token | A GitHub secret token, you will most likely want to use the special `secrets.GITHUB_TOKEN` | -| release-type | What type of project is this a release for? Currently we support `node`, `ruby`, `python`, `terraform-module`, new types of releases can be [added here](https://github.com/googleapis/release-please/tree/master/src/releasers) | -| package-name | A name for the artifact releases are being created for (this might be the `name` field in a `setup.py` or `package.json`) | +| Variable | Description | +| -------------------- | ------------------------------------------------ | +| token | A GitHub secret token, you will most likely want to use the special `secrets.GITHUB_TOKEN` | +| release-type | What type of project is this a release for? Currently we support `node`, `ruby`, `python`, `terraform-module`, new types of releases can be [added here](https://github.com/googleapis/release-please/tree/master/src/releasers) | +| package-name | A name for the artifact releases are being created for (this might be the `name` field in a `setup.py` or `package.json`) | +| bump-minor-pre-major | Should breaking changes before 1.0.0 produce minor bumps? Default `No` | ## How release please works diff --git a/action.yml b/action.yml index 305931f..b54ecbf 100644 --- a/action.yml +++ b/action.yml @@ -11,6 +11,9 @@ inputs: release-type: description: 'what type of release is this, one of (ruby, python, node, terraform-module)' required: true + bump-minor-pre-major: + description: 'should breaking changes before 1.0.0 produce minor bumps' + required: false runs: using: 'node12' main: 'dist/index.js' diff --git a/dist/index.js b/dist/index.js index 2e16088..f49e069 100644 --- a/dist/index.js +++ b/dist/index.js @@ -3694,6 +3694,7 @@ async function main () { const token = core.getInput('token') const releaseType = core.getInput('release-type') const packageName = core.getInput('package-name') + const bumpMinorPreMajor = Boolean(core.getInput('bump-minor-pre-major')) // First we check for any merged release PRs (PRs merged with the label // "autorelease: pending"): @@ -3712,7 +3713,8 @@ async function main () { apiUrl: 'https://api.github.com', repoUrl: process.env.GITHUB_REPOSITORY, token: token, - label: RELEASE_LABEL + label: RELEASE_LABEL, + bumpMinorPreMajor: bumpMinorPreMajor }) await release.run() } @@ -45282,7 +45284,7 @@ exports.Version = Version; /* 759 */ /***/ (function(module) { -module.exports = {"_from":"release-please@^4.2.2","_id":"release-please@4.2.2","_inBundle":false,"_integrity":"sha512-Hf0yAS27ilBzS6ekhGNsfDkBHTXnzIQGYv84syZfUDb5bFHHy+CZK+wOUkqxu3aRvJClKPR2M7CIBcjUYstcwA==","_location":"/release-please","_phantomChildren":{},"_requested":{"type":"range","registry":true,"raw":"release-please@^4.2.2","name":"release-please","escapedName":"release-please","rawSpec":"^4.2.2","saveSpec":null,"fetchSpec":"^4.2.2"},"_requiredBy":["/"],"_resolved":"https://registry.npmjs.org/release-please/-/release-please-4.2.2.tgz","_shasum":"8eb1b051da5af0bb93f4719be57c336ffc39f177","_spec":"release-please@^4.2.2","_where":"/Users/bencoe/oss/release-please-action","author":{"name":"Google Inc."},"bin":{"release-please":"build/src/bin/release-please.js"},"bugs":{"url":"https://github.com/googleapis/release-please/issues"},"bundleDependencies":false,"dependencies":{"@octokit/graphql":"^4.3.1","@octokit/request":"^5.3.4","@octokit/rest":"^17.1.4","chalk":"^4.0.0","concat-stream":"^2.0.0","conventional-changelog-conventionalcommits":"^4.0.0","conventional-changelog-writer":"^4.0.6","conventional-commits-filter":"^2.0.2","conventional-commits-parser":"^3.0.3","figures":"^3.0.0","parse-github-repo-url":"^1.4.1","semver":"^7.0.0","type-fest":"^0.13.0","yargs":"^15.0.0"},"deprecated":false,"description":"generate release PRs based on the conventionalcommits.org spec","devDependencies":{"@octokit/types":"^2.5.1","@types/chai":"^4.1.7","@types/mocha":"^7.0.0","@types/node":"^11.13.6","@types/semver":"^7.0.0","@types/yargs":"^15.0.4","c8":"^7.0.0","chai":"^4.2.0","cross-env":"^7.0.0","gts":"^2.0.0","mocha":"^7.0.0","nock":"^12.0.0","snap-shot-it":"^7.0.0","typescript":"^3.8.3"},"engines":{"node":">=10.12.0"},"files":["build/src","templates","!build/src/**/*.map"],"homepage":"https://github.com/googleapis/release-please#readme","keywords":["release","conventional-commits"],"license":"Apache-2.0","main":"./build/src/index.js","name":"release-please","repository":{"type":"git","url":"git+https://github.com/googleapis/release-please.git"},"scripts":{"clean":"gts clean","compile":"tsc -p .","docs-test":"echo add docs tests","fix":"gts fix","lint":"gts check","prepare":"npm run compile","presystem-test":"npm run compile","pretest":"npm run compile","system-test":"echo 'no system tests'","test":"cross-env ENVIRONMENT=test c8 mocha --recursive --timeout=5000 build/test","test:all":"cross-env ENVIRONMENT=test c8 mocha --recursive --timeout=20000 build/system-test build/test","test:snap":"SNAPSHOT_UPDATE=1 npm test"},"version":"4.2.2"}; +module.exports = {"_args":[["release-please@4.2.2","/usr/src/npm/@bcoe/release-please-action"]],"_from":"release-please@4.2.2","_id":"release-please@4.2.2","_inBundle":false,"_integrity":"sha512-Hf0yAS27ilBzS6ekhGNsfDkBHTXnzIQGYv84syZfUDb5bFHHy+CZK+wOUkqxu3aRvJClKPR2M7CIBcjUYstcwA==","_location":"/release-please","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"release-please@4.2.2","name":"release-please","escapedName":"release-please","rawSpec":"4.2.2","saveSpec":null,"fetchSpec":"4.2.2"},"_requiredBy":["/"],"_resolved":"https://registry.npmjs.org/release-please/-/release-please-4.2.2.tgz","_spec":"4.2.2","_where":"/usr/src/npm/@bcoe/release-please-action","author":{"name":"Google Inc."},"bin":{"release-please":"build/src/bin/release-please.js"},"bugs":{"url":"https://github.com/googleapis/release-please/issues"},"dependencies":{"@octokit/graphql":"^4.3.1","@octokit/request":"^5.3.4","@octokit/rest":"^17.1.4","chalk":"^4.0.0","concat-stream":"^2.0.0","conventional-changelog-conventionalcommits":"^4.0.0","conventional-changelog-writer":"^4.0.6","conventional-commits-filter":"^2.0.2","conventional-commits-parser":"^3.0.3","figures":"^3.0.0","parse-github-repo-url":"^1.4.1","semver":"^7.0.0","type-fest":"^0.13.0","yargs":"^15.0.0"},"description":"generate release PRs based on the conventionalcommits.org spec","devDependencies":{"@octokit/types":"^2.5.1","@types/chai":"^4.1.7","@types/mocha":"^7.0.0","@types/node":"^11.13.6","@types/semver":"^7.0.0","@types/yargs":"^15.0.4","c8":"^7.0.0","chai":"^4.2.0","cross-env":"^7.0.0","gts":"^2.0.0","mocha":"^7.0.0","nock":"^12.0.0","snap-shot-it":"^7.0.0","typescript":"^3.8.3"},"engines":{"node":">=10.12.0"},"files":["build/src","templates","!build/src/**/*.map"],"homepage":"https://github.com/googleapis/release-please#readme","keywords":["release","conventional-commits"],"license":"Apache-2.0","main":"./build/src/index.js","name":"release-please","repository":{"type":"git","url":"git+https://github.com/googleapis/release-please.git"},"scripts":{"clean":"gts clean","compile":"tsc -p .","docs-test":"echo add docs tests","fix":"gts fix","lint":"gts check","prepare":"npm run compile","presystem-test":"npm run compile","pretest":"npm run compile","system-test":"echo 'no system tests'","test":"cross-env ENVIRONMENT=test c8 mocha --recursive --timeout=5000 build/test","test:all":"cross-env ENVIRONMENT=test c8 mocha --recursive --timeout=20000 build/system-test build/test","test:snap":"SNAPSHOT_UPDATE=1 npm test"},"version":"4.2.2"}; /***/ }), /* 760 */ diff --git a/index.js b/index.js index c675cc0..0e6206e 100644 --- a/index.js +++ b/index.js @@ -8,6 +8,7 @@ async function main () { const token = core.getInput('token') const releaseType = core.getInput('release-type') const packageName = core.getInput('package-name') + const bumpMinorPreMajor = Boolean(core.getInput('bump-minor-pre-major')) // First we check for any merged release PRs (PRs merged with the label // "autorelease: pending"): @@ -26,7 +27,8 @@ async function main () { apiUrl: 'https://api.github.com', repoUrl: process.env.GITHUB_REPOSITORY, token: token, - label: RELEASE_LABEL + label: RELEASE_LABEL, + bumpMinorPreMajor: bumpMinorPreMajor }) await release.run() }