Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 36 Next »

Consumed API from other projects

ProjectAPI DependencyNotes
AAFv2.1.21


Dmaapv1.1.11


SDC

1.6.5 - sdc-tosca

1.4.1 - sdc-distribution-client


AAI

aai-schema 1.7.2


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
CDS0.4.4TODO


Published API - These projects use the policy libraries to build their code

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

            "mvn -DnewVersion=X.Y.Z-SNAPSHOT versions:set versions:update-child-modules versions:commit"


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

Update version of parent-resources in parent-integration in a previous review.

all pom.xml's

version.properties

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

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

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

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

2a

policy/docker

2.3.1

No maven artifacts are released.

Release docker images

all pom.xml's

version.properties

In main pom.xml change the following properties

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

In db-migrator Dockerfile

  • Point base image version to the latest released jre-alpine image, which is one back from the current image

Update Dockerfile in all repos with new version

Use this command to find Dockerfiles
find . -name '*Docker*' | awk '{printf("vi %s\n", $1)}'

https://gerrit.onap.org/r/c/policy/docker/+/124851

https://gerrit.onap.org/r/c/policy/docker/+/124866

https://gerrit.onap.org/r/c/policy/docker/+/124944

https://gerrit.onap.org/r/c/policy/docker/+/124953

https://gerrit.onap.org/r/c/policy/docker/+/124973


2b

policy/common

1.9.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/common/+/124850

https://gerrit.onap.org/r/c/policy/common/+/124867

https://gerrit.onap.org/r/c/policy/common/+/124879

https://gerrit.onap.org/r/c/policy/common/+/124891

https://gerrit.onap.org/r/c/policy/common/+/124905

3

policy/models

2.5.1

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


https://gerrit.onap.org/r/c/policy/models/+/124881

https://gerrit.onap.org/r/c/policy/models/+/124890

https://gerrit.onap.org/r/c/policy/models/+/124917

https://gerrit.onap.org/r/c/policy/models/+/124972

https://gerrit.onap.org/r/c/policy/models/+/124971

4a

policy/api

2.5.1

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

In Dockerfile

  • Ensure base image version is correct

https://gerrit.onap.org/r/c/policy/api/+/124896

https://gerrit.onap.org/r/c/policy/api/+/124952

https://gerrit.onap.org/r/c/policy/api/+/124957

https://gerrit.onap.org/r/c/policy/api/+/124966

https://gerrit.onap.org/r/c/policy/api/+/124969

https://gerrit.onap.org/r/c/policy/api/+/124970

4b

policy/pap

2.5.1

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

In Dockerfile

  • Ensure base image version is correct

https://gerrit.onap.org/r/c/policy/pap/+/124897

https://gerrit.onap.org/r/c/policy/pap/+/124956

https://gerrit.onap.org/r/c/policy/pap/+/124965

https://gerrit.onap.org/r/c/policy/pap/+/124968

https://gerrit.onap.org/r/c/policy/pap/+/124981

https://gerrit.onap.org/r/c/policy/pap/+/124979

4c

policy/drools-pdp

1.9.1

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

In Dockerfile

  • Ensure base image version is correct

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/drools-pdp/+/124898

https://gerrit.onap.org/r/c/policy/drools-pdp/+/124920

https://gerrit.onap.org/r/c/policy/drools-pdp/+/124925

https://gerrit.onap.org/r/c/policy/drools-pdp/+/124976

https://gerrit.onap.org/r/c/policy/drools-pdp/+/124996

https://gerrit.onap.org/r/c/policy/drools-pdp/+/124997

4d

policy/apex-pdp

2.6.0

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

In Dockerfile

  • Ensure base image version is correct

4e

policy/xacml-pdp

2.5.0

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

In Dockerfile

  • Ensure base image version is correct

4f

policy/distribution

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

In Dockerfile

  • Ensure base image version is correct

4g

policy/clamp

6.1.2

all pom.xml's

version.properties

In main pom.xml change the following properties

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

In Dockerfile

  • Ensure base image version is correct

4hpolicy/gui
2.1.1

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

In Dockerfile

  • Ensure base image version is correct
https://gerrit.onap.org/r/c/policy/gui/+/124916
5 - Dependent only on policy/drools-pdp

policy/drools-applications

1.9.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
  • version.policy.drools-pdp




When branching, its easiest to update the .gitreview file ON the new branch in order to ensure that new gerrit submissions are tracked on that branch.

If this is not done, then one should specify the branch when submitting the git review. 'git review honolulu'

[gerrit]

host=gerrit.onap.org

port=29418

project=policy/engine.git

defaultbranch=honolulu


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

git tag -sm "9.0.0-ONAP Release" 9.0.0-ONAP <optional-commit-id>
git push origin 9.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 “istanbul” branch.

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

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




  • No labels