We are developing a cross platform CLI tool (in GO) and a docker image which should work together. You are welcome to check the project on Github. Currently we are using semver, but abusing it and I will explain.
We have develop and main branches. On each push to develop CI increments the "patch" number of semver and publish a new "Pre-release" version for both CLI and docker, both will have the same version (e.g 0.1.1, 0.1.2, 0.1.3, etc..). On each push to main CI increments the "minor" number of the semver and publishes a new "Stable" version for both CLI and docker (e.g 0.2.0, 0.3.0, 0.4.0, etc..). As you can probably guess there are several problems with this method, for instance if we need to deploy a "hotfix"/”patch” we will push the fix to main and the minor version will be increased (for instance making 0.2.0 less advanced than 0.1.22).
So the requirements are, having two components CLI and docker which need to work together, having both "stable" and "unstable" releases.
Would like to get your opinion, or a good article which can help us choose which versioning mechanism and how we should implement it.
submitted by /u/Massive-Librarian-98
[link] [comments]
from Software Development – methodologies, techniques, and tools. Covering Agile, RUP, Waterfall + more! https://ift.tt/3tXh67g