This is a review of the jenkins file used for the release branch setup. https://github.com/apache/incubator-kie-tools/blob/main/.ci/jenkins/Jenkinsfile.setup-branch
The file is referenced directly from the corresponding jenkins job. https://ci-builds.apache.org/job/KIE/job/kie-tools/job/kie-tools-setup-branch/ Overall results - no big issues - the tag for the images are a bit confusing - it is unclear where and if we create specific folders for the new branches as for drools, optaplanner and kogito Here is a brief review of the steps executed. 1) this jenkins job uses a docker image to execute all the corresponding commands. The docker file for the image is at https://github.com/apache/incubator-kie-tools/blob/main/.ci/incubator-kie-tools-ci-build.Dockerfile There is nothing notable about this docker image. 2) "Load local shared scripts". It loads a number of scripts used in the rest of the pipeline. Nothing notable. 3) "Initialize" sets the display Name. Nothing Notable 4) "Clean workspace before build'. Just what the name says. Nothing notable 5) "Checkout kie-tools". Checks out the main branch. Nothing notable. 6) "CI Image Build'. Creates the image, setting the correct kie tools version. Beware of the difference between the CHECKOUT_BRANCH_NAME and the KIE_TOOLS_VERSION. 7) "Setup PNPM" Setup the parameters for building the kie tools - mainly maven related. QUESTION - is this related somehow with the Image Build? 8) "PNPM Bootstrap" Bootstraps the pnpm tool, whatever that means. Not clear for me, but probably noting relevant. 9) "Setup new branch" Creates the new branch with the correct NEW_BRANCH_NAME. Nothing notable. 10) "Update project version" Uses pnpm to update the project version to KIE_TOOLS_VERSION. Nothing notable, but see next point. 11) "Update kogito version" Uses pnpm to update also the kogito to KOGITO_MAVEN_VERSION and params.KOGITO_IMAGES_TAG. QUESTION: Why these need to be different from KIE_TOOLS_VERSION? Also, is this modifying the version of the image built at step 6? 12) "Update stream name". For me it is pretty unclear what hte stream name is. Probably nothing notable. 13) "Replace CI image tag" This should change the version for the image used in the newly created folder. However it is unclear why this should be required, since this image seems to be used only for performing the branch setup job. 14) "Commit and Push changes" Creates the special commit and performs the release I hope this is helpful Regards Paolo
