GithubHelp home page GithubHelp logo

vbump's Introduction

vbump - Version Bumper

This is a little API service in golang to handle project versions in "semver". Easily bump major, minor and patch versions for different projects. Every bump increments the specific version part with 1. You can use it in CI/CD pipelines to handle your release version.

dockerhub

https://hub.docker.com/r/maibornwolff/vbump

API

POST /major/myproject - bump major version for myproject and returns new version
POST /minor/myproject - bump minor version for myproject and returns new version
POST /patch/myproject - bump patch version for myproject and returns new version
POST /transient/minor/1.0 - bump minor version for 1.0 transiently without change in any project
POST /transient/patch/1.0 - bump patch version for 1.0 transiently without change in any project
POST /version/myproject/1.0 - set version to 1.0 for project myproject
GET /version/myproject - get version for project myproject

use it with docker

mkdir data # data dir for storing project files.
docker run -p 8080:8080 -v $PWD/data:/data -d maibornwolff/vbump:1.0.0

use it with kubernetes

helm upgrade --install helm/vbump

usage

curl -X POST http://localhost:8080/major/myproject returns 1
curl -X POST http://localhost:8080/minor/myproject returns 1.1
curl -X POST http://localhost:8080/minor/myproject returns 1.2
curl -X POST http://localhost:8080/patch/myproject returns 1.2.1
curl -X POST http://localhost:8080/version/myproject/4.0 returns 4.0
curl -X GET http://localhost:8080/version/myproject returns 4.0
curl -X POST http://localhost:8080/transient/patch/4.0 returns 4.0.1
curl -X POST http://localhost:8080/patch/myproject returns 4.0.1

vbump's People

Contributors

blaccello avatar christle avatar michaelharrer avatar rebbuh avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

vbump's Issues

allow to bump a specific version without changing the original version

vbump shoud support a route like this patch/transient/4.1 and should return 4.1.1. No stored project version should be changed. vbump should support the same behavior for minors

this is useful for hotfixes on specific older versions without changing the version path for a project.

vbump will fail to start with persistence enabled

With default config

  enabled: true
  accessMode: ReadWriteOnce
  size: 5Mi

vbump will try to create a new pod without releasing the pv before. this will result in a crashloopbackoff.

Possible quickwins:

  • change resourcetype from deployment to statefulset
  • change strategy to Recreate instead of RollingUpdate

a reset parameter for minor and patches

if you bump the first time a patch, the next version on a minor bump will be e.g. 1.1.0. Maybe you want a version like 1.1 without the trailing zero patch. the same for minors.

It should be possible to reset trailing zeros on minors or patches. Maybe with a route or a parameter.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.