Versions Compared

Key

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

...

  • Ensure all commits are using related TOPIC (one topic for one artifact)
  • Add "Release Process Step #' to each commit message (first line) 



StepActionResultsExamples
1Update release notesRelease notes available on https://docs.onap.org/projects/onap-cps/en/latest/release-notes.htmlChange 123658
2

Update read-the-docs copies of openapi documentation e.g. for CPS-Core:

Code Block
titlecopy openapi.yaml
/cps-rest/target/generated-sources/swagger/openapi.yaml → /docs/api/swagger/cps/openapi.yaml
/cps-ncmp-rest/target/generated-sources/swagger/openapi.yaml → /docs/api/swagger/ncmp/openapi.yaml 

For DMI-Plugin:

Code Block
titlecopy openapi.yaml
ncmp-dmi-plugin/src/target/generated-sources/swagger/openapi.yaml → /docs/openapi/openapi.yaml

Note 1. Run mvn clean install locally first to get required files in target subfolders

Note 2. This step can be skipped if there are no OPEN API changes

Latest (amalgamated) openapi.yaml available in read-the-docs
3Go to latest Gerrit merged review of repo and comment 'stage-release'
  • maven-stage Jenkins job is triggered
  • maven-docker-stage Jenkins job is triggered
  • Maven artifacts are published to Nexus 2 autorelease repository
  • Docker images are published to Nexus 3 registry
  • Change 118168
  • Job maven-stage-master 109
  • Job maven-docker-stage-master 109


4

Add and merge 'x.y.z.yaml' file to releases folder of the repository root.

It describes the release and refers to maven-stage job previously ran.

Note: This step is ignored for CPS Temporal (no Maven artifact delivered)

Note. this file should NOT contain 'tag_release=false'

Maven artifacts are published to maven release repository
  • Change 118174
  • Job cps-release-merge 1
5

Add and merge 'x.y.z-container.yaml' file to releases folder of the repository root.

It describes the release and refers to maven-docker-stage job previously ran.

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
??? Set "ref" to the (full) SHA of the last git

commit

commit  (the commit from step 4 in less that step was skipped then it is the commit from step 3) ???
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

TBC Above step is unclear which Sha is to be used maybe id doesn't matter....


Take the latest built image, retag it without the timestamp :

e.g. SO release file

Code Block
container_release_tag: '1.1.0'
...
...
containers:
    - name: 'cps-and-ncmp'
      version: '1.1.0-SNAPSHOT-20210609T102555Z'


Docker image is published to docker release repository
  • Change 118178
  • Job cps-release-merge 2
6

Prepare the next release by bumping and merging new version numbers:

  • In pom files, set to x.y.z-SNAPSHOT by running "mvn versions:set -DnewVersion=<snapshot version>"
  • In version.properties, set to x.y.z


7

Update https://gerrit.onap.org/r/q/project:oom with the release specific changes: 

  • Update /kubernetes/cps/values.yaml with new image versions
  • Update /kubernetes/cps/resources/config/application.yml if properties need to be added or updated.

Before pushing changes to the release-specific OOM branch, it is required to push them to master first. If it can not be done, then specify a reason in the release-specific change (for example, image version number is branch specific and it is expected that it could be different in master branch and release branch).




Manage Release Branch

Prerequisites

...