Skip to content

Versioning and Tagging of CHORDS releases

Charlie Martin edited this page May 22, 2017 · 8 revisions

This document is meant to serve as an overview of the tagging procedure and process we will follow during the course of the CHORDS 2016 development.

Github release tagging, branch naming, and Docker image tagging will follow a defined protocol.

Summary of Docker Tags

Example Docker Tag Git Release
(annotated tag)
Git Branch Use
:latest :latest X.Y.Z master The current head of the git master branch. Every merge to master will have an annotated git tag.
:0.9.4 :X.Y.Z X.Y.Z master Historic releases will be available as tagged Docker images.
:development :development none development A docker image created for development testing.
:pg_test :custom none any Any custom image that a developer wants distribute for testing.
  • The latest Docker image will be a copy of the most current git release of the master branch, and is the recommended stable distribution.
  • The development images are for development testing and will be pushed to Dockerhub on an ad-hoc basis.
  • The custom images are for special situations and developer testing.

Tagging and Versioning

Tagging

  • master
    • This is the main release branch, and will be tied to the docker image with the “latest” label
    • All release versions will be on this branch, and will be designated with annotated tags (E.g. this is what live CHORDS portals will ALWAYS be running)
  • development
    • The main development branch into which each working branch will be merged when the related issue is complete
  • working branches

Versioning and Releases

There will be three tiers of versioning following the format

MAJOR_VERSION.minor_version.patch_number (E.g: 1.0.1)

  • Major Version
    • These represent significant milestones, and do not occur frequently.
  • Minor Versions
    • Minor versions will be shipped after each sprint cycle. They represent incremental change when a smaller piece of functionality is ready to be deployed.
  • Patch Number
    • Patches would include urgent bug fixes and security patches. With any luck patches and bug fixes will be infrequent.

Useful links:

Docker Tagging

  • Latest
    • The most recent version for the master branch on github
  • Development
    • The most recent version for the development branch on github
Clone this wiki locally