Versions Compared

Key

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

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. The CI/CD daily release job does this by automatically failing if a SNAPSHOT is defined in the pom.xml's.
  • Use the Self Releases Workflow (Nexus2) to release artifacts.   Look at comments by Jorge Hernandez  for steps.
  • Update the OOM team K8S Helm Charts.

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:

...

policy/parent

3.1.1

all pom.xml's

...

Consumed API from other projects

...

2.6.0

...

v16

aai-schema 1.0.3

...

 implemented in own java code

...

Consumed API from other projects

ProjectAPI DependencyNotes
Portal

2.6.0


AAFv2.1.2
Dmaapv1.1.8


SDC1.6.0
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

ProjectAPINotes
CLAMPPolicy Lifecycle API

 implemented in own java code


OOFLegacy Policy APIimplemented in own python code
SDNCLegacy Policy APIimplemented in own code
DCAEPolicy Lifecycle APIImplemented 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. The CI/CD daily release job does this by automatically failing if a SNAPSHOT is defined in the pom.xml's.
  • Use the Self Releases Workflow (Nexus2) to release artifacts.   Look at comments by Jorge Hernandez  for steps.
  • Update the OOM team K8S Helm Charts.

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:

common1.6

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
  • version.policy.drools-pdp

Additional files to change in JUnit tests:

controlloop/common/feature-controlloop-management/src/test/resources/op.pom

  • Ensure that policy/docker/config/pe/brmsgw.conf points to the right version for the CSIT tests to work:

BRMS_DEPENDENCY_VERSION

  • Ensure that the policy K8S Helm charts oom/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf

BRMS_DEPENDENCY_VERSION

  • Ensure that the policy/engine
    • packages/install/src/files/brmsgw.conf - has the right version

Release OrderRepo (released version)NotesExample Commit(s) for upgrading versions
1

policy/parent

3.1.3

all pom.xml's

version.properties

https://gerrit.onap.org/r/c/policy/parent/+/104021
2a

policy/docker

2.0.1

all pom.xml's

version.properties

https://gerrit.onap.org/r/c/policy/docker/+/102678
2b

policy/common

1.6.5

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
https://gerrit.onap.org/r/c/policy/common/+/104047
3

policy/models

2.2.6

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version


  • Ensure that the policy K8S Helm charts oom/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf

BRMS_MODELS_DEPENDENCY_VERSION

  • Ensure that the policy/engine 

    packages/install/src/files/brmsgw.conf - is pointing to the right version


https://gerrit.onap.org/r/c/policy/

parent

models/+/

104021

104232

2a4a

policy/dockerapi

2.02.14

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version

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

  • policy.common.version
  • policy.models.version
https://gerrit.onap.org/r/c/policy/dockerapi/+/102678104257
2b4b

policy/

pap

2.2.3

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
https://gerrit.onap.org/r/c/policy/commonpap/+/104047104262
34c

policy/modelsdrools-pdp

21.26.03

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • Ensure that policy/docker/config/pe/brmsgw.conf points to the right version for the CSIT tests to work:

BRMS_MODELS_DEPENDENCY_VERSION

  • Ensure that the policy K8S Helm charts oom/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf

BRMS_MODELS_DEPENDENCY_VERSION

Ensure that the policy/engine packages/install/src/files/brmsgw.conf - is pointing to the right version

pom.xml consider changing the policy.common.version property:

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version

Update policy/drools-applications files:

  • pom.xml: version.policy.drools-pdp

https://gerrit.onap.org/r/c/policy/modelsdrools-pdp/+/100205104291

4a4d

policy/apiapex-pdp

2.3.2.0

all pom.xml's

version.properties

In main pom.xml

change the following properties

consider changing the policy.common.version property:

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version

4b4e

policy/papxacml-pdp

2.2.02

all pom.xml's

version.properties

In main pom.xml

change the following properties

consider changing the policy.common.version property:

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
4chttps://gerrit.onap.org/r/c/policy/droolsxacml-pdp1.6.0/+/104294
4f

policy/distribution

2.3.2

all pom.xml's

version.properties

In main pom

.xml consider changing the policy.common.version property:

.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version

Update policy/drools-applications dockerfile to pull this image (see below)

Update policy/drools-applications files:

  • pom.xml: version.policy.drools-pdp
  • controlloop/common/feature-controlloop-management/src/test/resources/op.pom
4d

policy/apex-pdp

2.2.0https://gerrit.onap.org/r/c/policy/distribution/+/104296
5 - Dependent only on policy/drools-pdp

policy/drools-applications

1.6.4

all pom.xml's

version.properties

In main pom.xml

consider changing the policy.common.version property:

change the following properties

all pom.xml's

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
4e

policy/xacml-pdp

2.2.0

  • version
.propertiesIn main pom
  • .
xml consider changing the
  • policy.
common.version property
  • drools-pdp

OOM:

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
4f
  • that the policy K8S Helm charts oom/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf

BRMS_DEPENDENCY_VERSION

  • Ensure that the policy/engine
    • packages/install/src/files/brmsgw.conf - has the right version

https://gerrit.onap.org/r/c/policy/drools-applications/+/104408
6 - Dependent on policy/drools-applications

policy/engine

1.6.04

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

packages/base/src/files/install/servers/brmsgw/config.properties

packages/install/src/files/brmsgw.conf

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
4g

policy/distribution

2.3.0

all pom.xml's

version.properties

In main pom.xml change the following properties

  • Ensure <parent> tag points to correct policy/parent version
  • policy.common.version
  • policy.models.version
5

policy/drools-applications

1.6.0

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 elalto'

Code Block
[gerrit]

host=gerrit.onap.org

port=29418

project=policy/engine.git

defaultbranch=frankfurt

When tagging for a release the following commands should be used:

...



...

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 frankfurt'

Code Block
[gerrit]

host=gerrit.onap.org

port=29418

project=policy/engine.git

defaultbranch=frankfurt


When tagging for a release the following commands should be used:

Code Block
git tag -sm "6.0.0-ONAP Release" 6.0.0-ONAP
git push <remote-name> 6.0.0-ONAP


Steps for Releasing and branching
1. Go to latest merged review of repo and comment “stage-release
2. It will trigger2 Jenkins jobs - stage-master & docker-stage-master
3. Once the jobs are successful, create a yaml filefor releasing maven artifacts firstandraise a review

4. Once that is merged andbuildis successful, create another container.yaml filefor releasing docker image andraise a review

NOTE: Drools-applications will require a 2nd "stage-release" to be done after step 3 due to the way it is built. The docker image requires the java artifacts to be released first, which are packaged into the image.

5. Once that is merged andbuildis successful, goto nexus3.onap.org andverify that the image was released 
6. Bump the snapshotversiontonextpatchversionandraise a review - I use this command “mvn versions:set -DnewVersion=2.5.1-SNAPSHOT
7. Once that is merged andbuildis successful, goto gerrit andcreate a “frankfurt” branch. 
8. Once the branch is created, bump the master branch tonext minor versionusing the same maven command andraise a review 9. Finally goto frankfurt branch andchange the .gitreview fileto point to frankfurt asdefault branch andraise the review.