Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial changes for trestle #958

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ This tag identifies the architecture the JDK has been built on and it intended t
---

- `variant:`
Example values: [`hotspot`, `temurin`, `openj9`, `corretto`, `dragonwell`, `bisheng`, `fast_startup`]
Example values: [`hotspot`, `temurin`, `openj9`, `corretto`, `dragonwell`, `bisheng`, `fast_startup`,`fast_debug`]

This tag identifies the JVM being used by the JDK, "dragonwell" itself is not a JVM but is currently considered a variant in its own right.

Expand Down
4 changes: 3 additions & 1 deletion pipelines/build/common/build_base_file.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -721,6 +721,8 @@ class Builder implements Serializable {
return "evaluation"
} else if (currentBuild.fullProjectName.contains("release")) {
return "release"
} else if (currentBuild.fullProjectName.contains("trestle")) {
return "trestle"
}
return
}
Expand Down Expand Up @@ -827,7 +829,7 @@ class Builder implements Serializable {
}

/*
Main function. This is what is executed remotely via the [release-|evaluation-]openjdkxx-pipeline and pr-tester jobs
Main function. This is what is executed remotely via the [release-|evaluation-|trestle-]openjdkxx-pipeline and pr-tester jobs
Running in the *openjdkX-pipeline
*/
@SuppressWarnings('unused')
Expand Down
8 changes: 7 additions & 1 deletion pipelines/build/common/config_regeneration.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -642,7 +642,13 @@ class Regeneration implements Serializable {

// Parse api response to only extract the relevant pipeline
getPipelines.jobs.name.each { pipeline ->
def pipelineName = (jobType != "evaluation" ? "openjdk${versionNumbers[0]}-pipeline" : "evaluation-openjdk${versionNumbers[0]}-pipeline")
def pipelineName = "openjdk${versionNumbers[0]}-pipeline"
if (jobType == "evaluation") {
pipelineName = "evaluation-openjdk${versionNumbers[0]}-pipeline"
} else if (jobType == "trestle") {
pipelineName = "trestle-openjdk${versionNumbers[0]}-pipeline"
}
context.println "[INFO] Proceeding with ${pipelineName} ..."
if (pipeline == pipelineName) {
Boolean inProgress = true
while (inProgress) {
Expand Down
6 changes: 6 additions & 0 deletions pipelines/build/common/openjdk_build_pipeline.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ class Build {
case 'dragonwell': variant = 'dragonwell'; break;
case 'fast_startup': variant = 'fast_startup'; break;
case 'bisheng': variant = 'bisheng'; break;
case 'fast_debug' : variant = 'fast_debug'; break;
default: variant = 'hs'
}
def jobName = "Test_openjdk${jobParams['JDK_VERSIONS']}_${variant}_${testType}_${jobParams['ARCH_OS_LIST']}"
Expand Down Expand Up @@ -226,6 +227,8 @@ class Build {
jdkBranch = 'master'
} else if (buildConfig.VARIANT == 'bisheng') {
jdkBranch = 'master'
} else if (buildConfig.VARIANT == 'fast_debug') {
jdkBranch = 'master'
} else {
throw new Exception("Unrecognised build variant: ${buildConfig.VARIANT} ")
}
Expand Down Expand Up @@ -283,6 +286,9 @@ class Build {
case 'bisheng':
suffix = "openeuler-mirror/bishengjdk-${javaNumber}"
break
case 'fast_debug':
suffix = "openjdk/${buildConfig.JAVA_TO_BUILD}"
break
default:
throw new Exception("Unrecognised build variant: ${buildConfig.VARIANT} ")
}
Expand Down
7 changes: 4 additions & 3 deletions pipelines/build/regeneration/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,12 +92,13 @@ Unreferenced items:
This standard generator generates the [top level](https://ci.adoptium.net/job/build-scripts/) pipeline jobs. It works by iterating through the config files, defining a job dsl configuration for each version that has a version config file.
It then calls [pipeline_job_template.groovy](pipelines/jobs/pipeline_job_template.groovy) to finalise the dsl. By default, the [job that runs this file](https://ci.adoptium.net/job/build-scripts/job/utils/job/build-pipeline-generator/) has restricted read access so you will likely need to contact a jenkins admin to see the results of the job.

There are another two generators:
There are another three generators:

1. [release generator](https://ci.adoptium.net/job/build-scripts/job/utils/job/release-build-pipeline-generator/) is only used to regenerate release pipelines.
2. [evaluation generator](https://ci.adoptium.net/job/build-scripts/job/utils/job/evaluation-pipeline-generator/) is used to regenerator evaluation pipeline and weekly-evaluation pipeline
2. [evaluation generator](https://ci.adoptium.net/job/build-scripts/job/utils/job/evaluation-pipeline-generator/) is used to regenerate evaluation pipeline and weekly-evaluation pipeline
3. [trestle generator](https://ci.adoptium.net/job/build-scripts/job/utils/job/trestle-pipeline-generator/) is used to regenerate trestle pipeline

They work in the similar was as the standard one but use different config files
They all work similarly to the standard one but with different config files

### Downstream Test Jobs

Expand Down
3 changes: 3 additions & 0 deletions pipelines/build/regeneration/build_job_generator.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ limitations under the License.
- build-scripts/jobs/jdk11u/evaluation-jdk11u-linux-arm-temurin (when jobType = "evaluation")
- build-scripts/release/jobs/release-jdk17u-mac-x64-temurin (when jobType = "release")
- build-scripts-pr-tester/build-test/jobs/jdk21/jdk21-alpine-linux-x64-temurin (when "pr-tester")
- build-scripts/jobs/jdk21u/trestle-jdk11u-linux-arm-temurin (when jobType = "trestle")
*/

String javaVersion = params.JAVA_VERSION
Expand Down Expand Up @@ -131,6 +132,8 @@ node('worker') {
// either use root path or flag from job to determinate if it is evaluation
} else if (jobRoot.contains('evaluation') || params.IS_EVALUATION_JOB) {
jobType = "evaluation"
} else if (jobRoot.contains('trestle')) {
jobType = "trestle"
} else {
jobType = "nightly"
}
Expand Down
Loading
Loading