You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
bump-everywhere
1.0.1
🚀 Automate versioning, changelog creation, README updates and GitHub releases using GitHub Actions,npm, docker or bash.
Allows you to automatically:
- Bump your sematic git tag by increasing the patch version
- Create & commit a changelog file
- If
npm
project then bumppackage.json
version and commit - Check
README.md
file, if it has references to older version, update with never version. - Create a release on GitHub with auto-generated release notes
It supports safe re-runs, it means that if you can run it for an already bumped or tagged repository, it'll not increase the version as everything is still up-to-date. It protects against recursive runs.
- uses: undergroundwires/bump-everywhere@master
with:
# Repository name with owner to bump & release. For example, undergroundwires/bump-everywhere
# (Optional) Default: ${{ github.repository }}
repository: ''
# Name of the user who'll commit the changelog
# (Optional) Default: ${{ github.actor }}
user: ''
# Personal access token (PAT) used to clone & push to the repository.
# If you use default, it'll not trigger other actions, but your own PAT then it triggers new actions
# (Optional) Default: ${{ github.token }}
git-token: ''
# Personal access token (PAT) used to release to GitHub.
# If you use default, it'll not trigger other actions, but your own PAT then it triggers new actions
# (Optional) Default: ${{ github.token }}
release-token: ''
With installation:
npm install -g bump-everywhere # or "npm install bump-everywhere --save-dev" for local installations
bump-everywhere --repository "undergroundwires/privacy.sexy" --user "bot-commiter-name" --git-token "PAT_TOKEN" --release-token "PAT_TOKEN"
Or without installation:
npx bump-everywhere --repository "undergroundwires/privacy.sexy" --user "bot-commiter-name" --git-token "PAT_TOKEN" --release-token "PAT_TOKEN"
- To get the image you can either:
- Pull from docker hub using
docker pull undergroundwires/bump-everywhere:latest
- Or build image yourself using
docker build . --tag undergroundwires/bump-everywhere:latest
- Pull from docker hub using
- Run with arguments:
docker run undergroundwires/bump-everywhere "undergroundwires/privacy.sexy" "bot-user" "GitHub PAT for pushes" "GitHub PAT for releases"
- Parameter order: repository, user, git push token, GitHub release token
- Ensure
bash
,git
,curl
,jq
exists in your environment- run e.g.
apk add bash git curl jq
- run e.g.
- Clone this repository:
git clone https://github.com/undergroundwires/bump-everywhere
- or optionally add this repository as git submodule:
git submodule add https://github.com/undergroundwires/bump-everywhere
- or optionally add this repository as git submodule:
- Call the script as following :
bash "scripts/bump-everywhere.sh" \
--repository "undergroundwires/privacy.sexy" \
--user "bot-commiter-name" \
--git-token "PAT_TOKEN" \
--release-token "PAT_TOKEN"
- You manually tag your last commit to update major & minor versions.
- E.g.
git commit -m "bumped version to 1.2.0" --allow-empty
git tag 1.2.0
git push && git push --tags
You can also use following scripts individually (check script files for usage, prerequisites & dependencies):
- bump-and-tag-version.sh: Automate versioning.
- create-github-release.sh: Automate creating GitHub releases
- print-changelog.sh: Automate creation of changelogs, e.g.
CHANGELOG.md
. - configure-github-repo.sh: Set-up CI/CD user for current repository.
- log-commits.sh: Filters & logs commits as bullet points in markdown form.
- bump-npm-version.sh: Updates
packages.json
to match the latest version. - bump-readme-versions.sh: Updates old references to
README.md
to the latest version.
privacy.sexy | safe-email | ez-consent | aws-static-site-with-cd
CI/CD is fully automated for this repo using different GIT events & GitHub actions.
- Feel free to use the badge in the
README.md
of repository where you use bump-everywhere:
[![Auto-versioned by bump-everywhere](https://github.com/undergroundwires/bump-everywhere/blob/master/badge.svg?raw=true)](https://github.com/undergroundwires/bump-everywhere)