Versions Compared

Key

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

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

2.6.0

...

v16

aai-schema 1.0.3

...

Consumed API from other projects

ProjectAPI DependencyNotes
AAFv2.1.21

Completed

Dmaapv1.1.11

Completed

SDC

1.6.5 - sdc-tosca

1.4.1 - sdc-distribution-client

Completed
AAI

aai-schema 1.7.2

Completed
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 librariesVFCREST - No direct link to any librariesSDNRDmaap - No direct link to any librariesSDNCREST - No direct link to any libraries

...

 implemented in own java 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:

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

policy/parent

3.1CDS
0.4.4TODO


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:

common162 policy/parent

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.2.0

all pom.xml's

version.properties

https://gerrit.onap.org/r/c/policy/parent/+/110016

2a

policy/docker

2.1.1

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/docker/+/114316
2b

policy/common

1.7.1

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/parentcommon/+/104021114285
2a3

policy/dockermodels

2.03.15

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

  • tag points to correct policy/parent version
  • policy.common.version


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

docker

models/+/

102678

114286

2b4a

policy/

api

2.

3.

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/commonapi/+/104047114288
34b

policy/modelspap

2.23.13

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

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/modelspap/+/104232114290
4a4c

policy/apidrools-pdp

21.27.04

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

    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 dockerfile to pull this image (see below)

    Update policy/drools-applications files:

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

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

    api

    drools-pdp/+/

    104257

    114325

    4b4d

    policy/papapex-pdp

    2.24.04

    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
    https://gerrit.onap.org/r/c/policy/papapex-pdp/+/104262114292
    4c4e

    policy/droolsxacml-pdp

    12.63.03

    all pom.xml's

    version.properties

    In main 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 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.version
    • policy.models.version
    https://gerrit.onap.org/r/c/policy/droolsxacml-pdp/+/104291114324
    4d4f

    policy/apex-pdpdistribution

    2.4.3.0

    all pom.xml's

    version.properties

    In main pom.xml

    consider changing the policy.common.version property:

    change the following properties

    policy/xacml-pdp

    2.2.0
    • Ensure <parent> tag points to correct policy/parent version
    • policy.common.version
    • policy.models.version
    4e
    • policy.common.version
    • policy.models.version
    https://gerrit.onap.org/r/c/policy/distribution/+/114291
    5 - Dependent only on policy/drools-pdp

    policy/drools-applications

    1.7.5

    all pom.xml's

    version.properties

    In main pom.xml

    consider changing the policy.common.version property:

    change the following properties

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


    https://gerrit.onap.org/r/c/policy/xacmldrools-pdpapplications/+/104294
    4f

    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
    https://gerrit.onap.org/r/c/policy/distribution/+/104296
    5 - Dependent only on policy/drools-pdp

    policy/drools-applications

    1.6.0

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

    policy/engine

    1.6.0 - In Progress

    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

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

    Code Block
    [gerrit]
    
    host=gerrit.onap.org
    
    port=29418
    
    project=policy/engine.git
    
    defaultbranch=guilin


    When tagging for a release, the following commands can be used:

    Code Block
    git tag -sm "7.0.0-ONAP Release" 7.0.0-ONAP <optional-commit-id>
    git push origin 7.0.0-ONAP

    Most likely you will need 'gpg2' installed and configured for git in order to sign the tags. NOTE: ONAP is requiring that the tags be signed.

    Release tags are best to be applied against the last commit that was for an image release. However, sometimes that does not apply if an image did not require a new release. So its possible some tags will be on the same commit across releases (eg policy/docker is one repo where that is true). Depending on when branching happens, some tags may not be visible in a log for a specific branch. Best to use the online gerrit gui to see all the tags for a repo.


    Steps for Releasing and branching

    Raise a review to refer released version of dependency (parent, common, models etc.)

    Go to latest merged review of repo and comment “stage-release

    It will trigger 2 Jenkins jobs - stage-master & docker-stage-master

    NOTE: The "docker-stage-master" job will fail for drools-applications

    Once the jobs are successful, create a yaml file for releasing maven artifacts first and raise a review.  This file can typically be generated using this script: mkart.sh

    Once that is merged and build is successful, create another container.yaml file for releasing docker image and raise a review.  This file can typically be generated using this script: mkdock.sh

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

    Once that is merged and build is successful, go to nexus3.onap.org & nexus.onap.org and verify that the image & artifacts were released 

    Bump the snapshot version to next patch version and raise a review - Use this command “mvn versions:set -DnewVersion=<snapshot-version>

    Update the patch version in "version.properties" file.

    Below steps are ONLY needed when we are branching and proceeding to new release
    Once that is merged and build is successful, go to gerrit and create a “guilin” branch.

    Once the branch is created, bump the master branch to next minor version using the same maven command and raise a review

    Finally go to guilin branch and change the .gitreview file to point to guilin as default branch and raise the review.