Rationale

Details on the history and discussions that led to this process can be found at Release Versioning Strategy.

Benefits

Process Overview

Java (Maven) Artifacts Release Process

Docker Images (work in process)

Proposed Java/Docker versioning flow:

  1. Produce SNAPSHOT Java artifact.  Test this in a SNAPSHOT docker image.
  2. Produce staging (release candidate) Java artifact.  Test this in a SNAPSHOT docker image.
  3. Produce release Java artifact by picking one of the candidates from staging. 
  4. Produce STAGING docker image using the release Java artifact.  Use this in E2E test flows.
  5. Produce RELEASE docker image by picking one of the candidate STAGING docker images.

References