2019-10-26 17:35:58 +00:00
## gh-action-bump-version
2019-01-26 23:08:05 +00:00
2019-10-26 17:35:58 +00:00
GitHub Action for automated npm version bump.
2019-06-04 19:38:29 +00:00
2020-08-01 17:16:20 +00:00
This Action bumps the version in package.json and pushes it back to the repo.
2019-10-26 19:09:42 +00:00
It is meant to be used on every successful merge to master but
2019-09-06 18:26:57 +00:00
you'll need to configured that workflow yourself. You can look to the
[`.github/workflows/push.yml` ](./.github/workflows/push.yml ) file in this project as an example.
2019-06-04 19:38:29 +00:00
2020-04-03 23:36:29 +00:00
**Attention**
2020-04-03 11:08:03 +00:00
Make sure you use the `actions/checkout@v2` action!
2019-07-17 00:12:34 +00:00
### Workflow
2019-06-04 19:38:29 +00:00
2020-05-05 17:56:37 +00:00
* Based on the commit messages, increment the version from the latest release.
2020-09-06 10:24:19 +00:00
* If the string "BREAKING CHANGE", "major" or the Attention pattern `refactor!: drop support for Node 6` is found anywhere in any of the commit messages or descriptions the major
2019-06-04 19:38:29 +00:00
version will be incremented.
2020-02-13 19:37:10 +00:00
* If a commit message begins with the string "feat" or includes "minor" then the minor version will be increased. This works
2019-06-04 19:38:29 +00:00
for most common commit metadata for feature additions: `"feat: new API"` and `"feature: new API"` .
2020-10-06 16:10:02 +00:00
* If a commit message contains the word "pre-alpha" or "pre-beta" or "pre-rc" then the pre-release version will be increased (for example specifying pre-alpha: 1.6.0-alpha.1 -> 1.6.0-alpha.2 or, specifying pre-beta: 1.6.0-alpha.1 -> 1.6.0-beta.0)
2019-06-04 19:38:29 +00:00
* All other changes will increment the patch version.
2019-09-09 19:10:07 +00:00
* Push the bumped npm version in package.json back into the repo.
2019-10-26 19:10:38 +00:00
* Push a tag for the new version back into the repo.
2020-05-05 17:56:37 +00:00
### Usage:
**tag-prefix:** Prefix that is used for the git tag (optional). Example:
```yaml
2020-05-06 11:36:42 +00:00
- name: 'Automated Version Bump'
uses: 'phips28/gh-action-bump-version@master'
with:
tag-prefix: ''
2020-05-05 17:56:37 +00:00
```
2020-09-08 06:46:49 +00:00
2020-09-06 11:13:52 +00:00
**skip-tag:** The tag is not added to the git repository (optional). Example:
```yaml
- name: 'Automated Version Bump'
uses: 'phips28/gh-action-bump-version@master'
with:
skip-tag: 'true'
```
2020-09-08 06:46:49 +00:00
2020-09-06 10:24:19 +00:00
**wording:** Customize the messages that trigger the version bump. It must be a string, case sensitive, coma separated (optional). Example:
```yaml
- name: 'Automated Version Bump'
uses: 'phips28/gh-action-bump-version@master'
with:
minor-wording: 'add,Adds,new'
major-wording: 'MAJOR,cut-major'
```
2020-09-08 06:46:49 +00:00
2020-05-05 17:56:37 +00:00
**PACKAGEJSON_DIR:** Param to parse the location of the desired package.json (optional). Example:
```yaml
2020-05-06 11:36:42 +00:00
- name: 'Automated Version Bump'
uses: 'phips28/gh-action-bump-version@master'
env:
PACKAGEJSON_DIR: 'frontend'
2020-05-05 17:56:37 +00:00
```