Thanks for the verification Paolo.

Here are some answers for your questions:

7) "Setup PNPM" Setup the parameters for building the kie tools - mainly maven 
related. QUESTION - is this related somehow with the Image Build?
A: No, as you pointed out they are mainly maven related configurations.

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?
A: KIE tools relies on weekly snapshots of it's dependencies, that's why we 
have different versions for the maven dependencies and also for the images 
dependencies. So, KOGITO_MAVEN_VERSION is always in this format: 
x.x.x-YYYYMMDD-SNAPSHOT and the KOGITO_IMAGES_TAG is in this format: 
x.x.x-YYYYMMDD.
It's also not related to the image built on step 6.

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.
A: On step 6 we build a new CI image and we tag it with the stream name. I.E: 
10.0.x. In this step we replace all Jenkinsfiles to use that image, so all 
pipelines that are going to run for this development stream (nightly, weekly, 
etc) will use the CI image tagged (10.0.x) and not the one that is tagged = 
main. This allows to evolve the CI image that is on main branch without 
breaking the jobs that run for the 10.0.x branch.

It is worth mentioning that KIE tools does not use the kogito-pipelines 
framework nor job DSL to generate jobs and therefore automation B and C jobs 
needs to be manually created.
(Actually automation B is not required for KIE tools as it uses Github actions 
for that purpose)

This is not ideal and in the future we should revisit this topic to find a way 
where all projects, including kie-tools use the same framework and libraries 
for the CI.

On 2024/07/17 14:33:27 Paolo Bizzarri wrote:
> 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
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to