All Projects → undergroundwires → bump-everywhere

undergroundwires / bump-everywhere

Licence: Apache-2.0 license
🚀 Automate versioning, changelog creation, README updates and GitHub releases using GitHub Actions,npm, docker or bash.

Programming Languages

shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to bump-everywhere

Gaia
Build powerful pipelines in any programming language.
Stars: ✭ 4,534 (+18791.67%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, devops-tools, gitops
bodywork-ml-pipeline-project
Deployment template for a continuous training pipeline.
Stars: ✭ 22 (-8.33%)
Mutual labels:  pipeline, continuous-delivery, continuous-deployment, gitops
Android-CICD
This repo demonstrates how to work on CI/CD for Mobile Apps 📱 using Github Actions 💊 + Firebase Distribution 🎉
Stars: ✭ 37 (+54.17%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, github-actions
generate-changelog
generates changelog from git based on jira tickets
Stars: ✭ 18 (-25%)
Mutual labels:  changelog, continuous-integration, continuous-delivery, changelog-generator
Rocket
Automated software delivery as fast and easy as possible 🚀
Stars: ✭ 217 (+804.17%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, devops-tools
Jx
Jenkins X provides automated CI+CD for Kubernetes with Preview Environments on Pull Requests using Cloud Native pipelines from Tekton
Stars: ✭ 4,041 (+16737.5%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, gitops
actions
Set of actions for implementing CI/CD with werf and GitHub Actions
Stars: ✭ 67 (+179.17%)
Mutual labels:  continuous-integration, continuous-delivery, gitops, github-actions
swarmci
Swarm CI - Docker Swarm-based CI system or enhancement to existing systems.
Stars: ✭ 48 (+100%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, continuous-deployment
Argo Cd
Declarative continuous deployment for Kubernetes.
Stars: ✭ 7,887 (+32762.5%)
Mutual labels:  pipeline, continuous-delivery, continuous-deployment, gitops
Git Push Deploy
Simple Automated CI/CD Pipeline for GitHub and GitLab Projects
Stars: ✭ 21 (-12.5%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, continuous-deployment
ship-it
Wattpad's tool for continuously deploying code to Kubernetes quickly, safely, and observably.
Stars: ✭ 14 (-41.67%)
Mutual labels:  continuous-delivery, continuous-deployment, gitops
k8s.ecoysystem.apps
kubernetes(k8s) ecosystem applications written c#, including micro-service(aspnetcore.webapi) and health checks etc. the goal is automatic complete continuous integration, delivery, deployment by committing code to the respository. so i will continue to be iterated...
Stars: ✭ 16 (-33.33%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
workr
Simple and easy to setup job runner for any kind of automation
Stars: ✭ 15 (-37.5%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
generator-nullfactory-xrm
Yeoman generator for Dynamics 365 Solutions. It generates a project structure that facilitates the quick creation builds and automated release strategies with minimal effort.
Stars: ✭ 15 (-37.5%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
badwolf
Docker based continuous integration, continuous deployment and code lint review system for BitBucket
Stars: ✭ 88 (+266.67%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
gtbump
git tag bump: A simple utility to bump and manage git semantic version tags and generate Markdown changelogs.
Stars: ✭ 15 (-37.5%)
Mutual labels:  changelog, versioning, changelog-generator
changed-files
Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.
Stars: ✭ 733 (+2954.17%)
Mutual labels:  continuous-integration, github-actions, github-action
maestro
Faster CI/CD for multi-artifact projects
Stars: ✭ 13 (-45.83%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
aws-cloudformation-simplified
AWS CloudFormation - Simplified | Hands On Learning !!
Stars: ✭ 51 (+112.5%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment
nightly-docker-rebuild
Use nightli.es 🌔 to rebuild N docker 🐋 images 📦 on hub.docker.com
Stars: ✭ 13 (-45.83%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment

bump-everywhere

🚀 Automate versioning, changelog creation, README updates and GitHub releases using GitHub Actions,npm, docker or bash.

contributions welcome Quality checks Bump & release Publish Test Code size Docker image size Auto-versioned by bump-everywhere

functions of bump-everywhere

Features

🤖 Allows you to automatically:

  • Bump your semantic git tag by increasing the patch version.
  • Create & commit a changelog file.
  • If npm project then bump package.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.

Other features include:

  • Zero-configuration for most use-cases, but can still be customized.
  • 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.

Usage

Option 1. Use GitHub actions

- 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 will do the bump commit
    # (Optional) Default: ${{ github.actor }}
    user: ''

    # Commit message that will be used in the bump commit
    # (Optional) Default: ⬆️ bump everywhere to {{version}}
    commit-message: ''

    # 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: ''

    # The type of the GitHub release
    # Options: 'release' | 'prerelease' | 'draft' | 'none' (does not release)
    # (Optional) Default: 'release'
    release-type: ''

    # Personal access token (PAT) used to release to GitHub.
    # Used only if release-type is not "none"
    # 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: ''

    # Git branch to push the changes such as version tags, CHANGELOG file, version changes...
    # Configuring this should not be needed for most use-cases.
    # Use this only if you DO NOT use a single main default branch (e.g. `master` or `main`).
    # (Optional) Default: Default "git clone" behavior. Checks out to default branch of remote.
    branch: ''

Option 2. Use Docker

  • 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
  • Run with arguments:

      args=(
        # Required:
        --repository "undergroundwires/privacy.sexy"
        --user "bot-user"
        --git-token "GitHub PAT for pushes"
        --release-type "prerelease"
        --release-token "GitHub PAT for releases"
        --commit-message "⬆️ bump to {{version}}"
        # Optional:
        --branch 'custom branch name'
      )
      docker run undergroundwires/bump-everywhere "${args[@]}"

Option 3. Use npm

  1. (Optionally) install globally: npm install -g bump-everywhere
    • or locally: npm install bump-every-where --save-dev
  2. Run npx bump-everywhere <parameters...>

Option 4. Use scripts

  1. Ensure bash (4 or newer), git, curl, jq exists in your environment
    • On Alpine: apk add bash git curl jq
    • On Windows: choco install git curl jq and use Git Bash
  2. 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
  3. Call the script: bash "scripts/bump-everywhere.sh" <parameters>

Updating minor & major versions

bump-everywhere only increases your patch versions. You manually tag your last commit to update major & minor versions.

E.g. :

  git commit -m "bumped version to 1.4.0" --allow-empty
  git tag 1.4.0
  git push && git push origin 1.4.0

All scripts

You can also use following scripts individually (check script files for usage, prerequisites & dependencies):

Some example usages

Support

Sponsor 💕. Consider one time or recurring donation on GitHub Sponsors or any other way (undrgroundwires.dev/donate), every penny you leave will help development and maintenance of the project .

Star 🤩. If you do cannot do that you can just give it a star . It helps me to see that the project is appreciated.

Badge 📛. If you use the project, feel free to use the badge in the README.md of repository where you use bump-everywhere so we can have larger community that can help improving the project. It would look like Auto-versioned by bump-everywhere). You can add following in your markdown file:

[![Auto-versioned by bump-everywhere](https://github.com/undergroundwires/bump-everywhere/blob/master/badge.svg?raw=true)](https://github.com/undergroundwires/bump-everywhere)

GitOps

CI/CD is fully automated for this repo using different GIT events and GitHub actions.

GitOps flow

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].