Policy R4 Dublin Independent Versioning And Release Process Plan
Consumed API from other projects
Project | API Dependency | Notes |
---|---|---|
Portal | 2.4.0 | |
AAF | v2.1.2 | |
Dmaap | v1.1.8 | |
SDC | 1.5.1 (Dublin) | |
AAI | v16 aai-schema 1.0.3 | No direct link to any libraries |
SO | REST - No direct link to any libraries | |
VFC | REST - No direct link to any libraries | |
SDNR | Dmaap - No direct link to any libraries | |
SDNC | REST - No direct link to any libraries |
Published API - These projects use the policy libraries to build their code
Project | API | Notes |
---|---|---|
CLAMP | Policy Lifecycle API | implemented in own java code |
OOF | Legacy Policy API | implemented in own python code |
SDNC | Legacy Policy API | implemented in own code |
DCAE | Policy Lifecycle API | Implemented own python code |
1. Follow the process as outlined here: Independent Versioning and Release Process. Policy repositories inherit from oparent so release jobs will fail if any SNAPSHOT artifact is referenced in the pom.xml's.
Verify there are no SNAPSHOTs and we are up-to-date with other team's released artifacts. For Casablanca, the CI/CD daily release job does this by automatically failing if a SNAPSHOT is defined in the pom.xml's.
Send Helpdesk tickets to LF ONAP release engineering specifying the daily release CI/CD Job to officially release Java artifacts and any docker images generated by that release job. Eg. The LF moves from staging to the appropriate release repository.
Update the Integration team manifest so the community knows which released artifacts are available. Example gerrit review: https://gerrit.onap.org/r/#/c/42709/
Update the Demo team heat scripts so the automated External Lab Jobs work and the Integration team has the latest artifacts for testing.
Example gerrit review: https://gerrit.onap.org/r/#/c/42711/
If the branch has occurred, then we must also ensure the heat points to the correct branch: https://gerrit.onap.org/r/#/c/49869/1
Update the OOM team K8S Helm Charts. Example gerrit review: https://gerrit.onap.org/r/#/c/42713/
Note: If using maven version or release plugin, also manually check the versions are set correctly in the POMs, these plugins can miss POMs especially if they do not have Java source code in them.
2. For any new changes to be done post-Release. Then the we must update to the next SNAPSHOT version:
Release Order | Repo (released version) | Notes | Example Commit(s) for upgrading versions |
---|---|---|---|
1 | policy/parent 2.1.0 | all pom.xml's version.properties | |
2a | policy/docker 1.4.0 | all pom.xml's version.properties In main pom.xml change the following properties
NOTE: Be sure the following are set to match drools-applications and models repo ./config/pe/brmsgw.conf: BRMS_DEPENDENCY_VERSION BRMS_MODELS_DEPENDENCY_VERSION | |
2b | policy/common 1.4.0 | all pom.xml's version.properties In main pom.xml change the following properties
| |
3 | policy/models 2.0.2 | all pom.xml's version.properties In main pom.xml change the following properties
BRMS_MODELS_DEPENDENCY_VERSION
BRMS_MODELS_DEPENDENCY_VERSION | |
4a | policy/api 2.0.1 | all pom.xml's version.properties In main pom.xml change the following properties
| |
4b | policy/pap 2.0.1 | all pom.xml's version.properties In main pom.xml change the following properties
| |
4c | policy/drools-pdp 1.4.0 | all pom.xml's version.properties In main pom.xml consider changing the policy.common.version property:
Update policy/drools-applications dockerfile to pull this image (see below) Update policy/drools-applications pom.xml | |
4d | policy/apex-pdp 2.0.4 | all pom.xml's version.properties In main pom.xml consider changing the policy.common.version property:
| |
4e | policy/xacml-pdp 2.0.1 | all pom.xml's version.properties In main pom.xml consider changing the policy.common.version property:
| |
4f | policy/engine 1.4.1 | all pom.xml's version.properties BRMSGateway/config.properties BRMSGateway/dependency.json BRMSGateway/src/main/java/org/onap/policy/brms/api/BrmsPush.java BRMSGateway/src/test/resources/config.properties In main pom.xml change the following properties
| |
5a | policy/drools-applications 1.4.2 | all pom.xml's version.properties In main pom.xml change the following properties
Additional files to change in JUnit tests: controlloop/common/feature-controlloop-management/src/test/resources/op.pom In the dockerfile change to point to released drools-pdp image: FROM onap/policy-drools:1.4.0 and force pull the policy-drools:1.4.0 image: https://gerrit.onap.org/r/#/c/87814/1/controlloop/build/docker-cl
BRMS_DEPENDENCY_VERSION
BRMS_DEPENDENCY_VERSION | |
5b | policy/distribution 2.1.0 | all pom.xml's version.properties In main pom.xml change the following properties
|
When branching, its easiest to update the .gitreview file ON the new branch in order to ensure that new gerritt submissions are tracked on that branch.
If this is not done, then one should specify the branch when submitting the git review. 'git review dublin'
[gerrit]
host=gerrit.onap.org
port=29418
project=policy/engine.git
defaultbranch=dublin
When tagging for a release the following commands should be used:
git tag -sm "4.0.1-ONAP Release" 4.0.1-ONAP
git push <remote-name> 4.0.1-ONAP