Auto generate 2nd-level job in Perf Pipeline
Currently, the 2nd-level job needs to be generated manually. We need to automatically generate the 2nd-level jobs.
https://github.com/adoptium/aqa-tests/blob/c2cb30403aceac91d61b1840daf93f32093c42fc/buildenv/jenkins/perfPipeline_root.groovy#L31
reference: https://github.com/adoptium/aqa-tests/blob/master/buildenv/jenkins/testJobTemplate how to use trigger it: https://github.com/adoptium/aqa-tests/blob/c2cb30403aceac91d61b1840daf93f32093c42fc/buildenv/jenkins/JenkinsfileBase#L427
previous work: https://github.com/adoptium/aqa-tests/pull/5695/files
Hi can I work on this?
Given the fact that https://github.com/adoptium/aqa-tests/pull/5695/files was created 6 months ago, it may be easier to write a new DSL job based on https://github.com/adoptium/aqa-tests/blob/master/buildenv/jenkins/testJobTemplate. Our goal is to run the DSL in L1 and generate L2. Ideally, we should not loop PLATFORMS and trigger the L2 jobs regardless (as follows). https://github.com/adoptium/aqa-tests/blob/479eb0e9ec4d501cc65a23d33d03f6e1b09b874a/buildenv/jenkins/perfPipeline_root.groovy#L7
It should use logic in L2, where the PLATFORM should match with perfConfigJson value. And L2 does not need to process PLATFORM and perfConfigJson anymore. L2 only gets one PLATFORM.
https://github.com/adoptium/aqa-tests/blob/479eb0e9ec4d501cc65a23d33d03f6e1b09b874a/buildenv/jenkins/perfPipeline.groovy#L91
In the DSL job, we should
- Add required parameters - all parameters in https://ci.adoptium.net/job/Perf_openjdk21_hs_sanity.perf_x86-64_linux_dacapo/build?delay=0sec except PLATFORMS. PLATFORMS should be PLATFORM (no s). We expect a single platform.
- Remove unnessary parameters
- update SCRIPT_PATH to point to perfPipeline.groovy in aqa-test repo https://github.com/adoptium/aqa-tests/blob/479eb0e9ec4d501cc65a23d33d03f6e1b09b874a/buildenv/jenkins/testJobTemplate#L491C20-L491C31