...
The Policy Framework release process is complex, time-consuming, and tedious. In the release process, the maven repositories and docker images must be released in the order shown in the diagram above: Blue-->Green-->Pink-->Yellow→Purple. In addition, the references for the repository layering and the parent Docker image file references must be set to release references before staging and back to snapshot references after staging.
Release Scripts
A set of scripts have been developed to make the release process somewhat less tedious. The scripts are located in the policy/parent repo here.
The scripts:
- Operate on a cloned copy of all 13 Policy Framework repositories
- Breaks the release process into a set of phases, which are executed one after another to perform a release
- Can release on the Master branch or any other branch
- Act on the POM files, Docker files, the maven and docker release files, the version.properties files, and the pf_release_data.csv file in the repos, updating the references in those files as required for each phase
The scripts do NOT:
- Fully automate the release process, manual checking and submission of commits is still required
- Capture every possible permutation and corner case of releasing, manual intervention in the process is often required
bumpSnapshots.sh | |
generateCommit.sh | |
getReleaseData.sh | |
mkart.sh | |
mkdock.sh | |
newReleaseSnapshots.sh | |
releasePhase.sh | |
releaseRepo.sh | |
releaseRepoImages.sh | |
updateOomImages.sh | |
updateParentRef.sh | |
updateRefs.sh |
Kohn (Master)
Repo | Last Tag Version | Master Snapshot Version | Docker Images |
---|---|---|---|
policy/parent | 3.5.3 | 3.6.0-SNAPSHOT | |
policy/docker | 2.4.3 | 2.5.0-SNAPSHOT | 'policy-jre-alpine':'policy-jdk-alpine':'policy-db-migrator' |
policy/common | 1.10.3 | 1.11.0-SNAPSHOT | |
policy/models | 2.6.3 | 2.7.0-SNAPSHOT | |
policy/api | 2.6.3 | 2.7.0-SNAPSHOT | 'policy-api' |
policy/pap | 2.6.3 | 2.7.0-SNAPSHOT | 'policy-pap' |
policy/apex-pdp | 2.7.3 | 2.8.0-SNAPSHOT | 'policy-apex-pdp' |
policy/drools-pdp | 1.10.3 | 1.11.0-SNAPSHOT | 'policy-drools' |
policy/xacml-pdp | 2.6.3 | 2.7.0-SNAPSHOT | 'policy-xacml-pdp' |
policy/distribution | 2.7.3 | 2.8.0-SNAPSHOT | 'policy-distribution' |
policy/clamp | 6.2.3 | 6.3.0-SNAPSHOT | 'policy-clamp-backend':'policy-clamp-ac-pf-ppnt':'policy-clamp-ac-k8s-ppnt':'policy-clamp-ac-http-ppnt':'policy-clamp-runtime-acm' |
policy/gui | 2.2.3 | 2.3.0-SNAPSHOT | 'policy-gui' |
policy/drools-applications | 1.10.3 | 1.11.0-SNAPSHOT | 'policy-pdpd-cl' |
...