Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Ensure that your artifacts inherit from O-Parent (oparent)
    • If not possible, please maintain your own implementations of the various configurations and checks provided by oparent
  • Remove all external SNAPSHOT dependencies
    • External = cross-project (including oparent) or 3rd party
    • Check version manifest at https://git.onap.org/integration/tree/version-manifest/src/main/resources for the right version to use for your cross-project dependencies
      • The Integration team is providing a Maven plugin to warn you of outdated references.  To use it, run the following command:

        Code Block
        mvn org.onap.integration:version-manifest:version-check
    • If your upstream cross-project dependencies haven't entered their artifacts in the manifest above, please contact the respective project team to get them to version/release their artifacts and add their entries to the manifest
    • Remove ecomp-staging Nexus repo from your local ~/.m2/settings.xml repositories list; all release-versioned artifact dependencies should be fulfilled from the ecomp-releases repo only going forward
  • Set up -release-version jobs (staging jobs) to deploy candidate artifacts to Staging
    • Generates candidate “autorelease-xxxx” directories in Nexus
    • Ensure that your version.properties file has the right version number defined for the intended release
  • Ensure that the staging jobs above have completed and generated candidate artifacts
  • Perform any necessary testing against the candidate artifacts
  • Email helpdesk@onap.org to select a candidate as formal release artifact
  • Update the declared version numbers for your respective artifacts in the java version manifest: https://git.onap.org/integration/tree/version-manifest/src/main/resources/java-manifest.csv
  • Update the CHANGELOG to described the changes that were part of this release
    • TBD: CHANGELOG structure and update process is being developed by the Documentation project
  • Bump your own version numbers for ongoing development
    • SNAPSHOT versions in pom.xml
    • Staging/Release version in version.properties

Docker Images

...

Release Process

Prepare your docker images.  Here is the high level flow relating the various Java artifact versions to Docker tagsProposed 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.

Docker image release process:

References