diff --git a/ci/common.jsonnet b/ci/common.jsonnet index d48f4c2d8a9c..839c0a199968 100644 --- a/ci/common.jsonnet +++ b/ci/common.jsonnet @@ -42,17 +42,15 @@ local common_json = import "../common.json"; }, for name in std.objectFields(jdks_data) } + { - local latestJDKCE = self["labsjdk-ce-20"], - local latestJDKEE = self["labsjdk-ee-20"], # Some convenient JDK aliases which don't require ["name"] for frequently-used JDKs labsjdk17ce: self["labsjdk-ce-17"], labsjdk17ee: self["labsjdk-ee-17"], - labsjdk20ce: latestJDKCE, - labsjdk20ee: latestJDKEE, + labsjdk20ce: self["labsjdk-ce-20"], + labsjdk20ee: self["labsjdk-ee-20"], - labsjdkLatestCE: latestJDKCE, - labsjdkLatestEE: latestJDKEE, + labsjdkLatestCE: self["labsjdk-ce-21"], + labsjdkLatestEE: self["labsjdk-ee-21"], }, # The devkits versions reflect those used to build the JVMCI JDKs (e.g., see devkit_platform_revisions in /make/conf/jib-profiles.js) diff --git a/vm/ci/ci_common/common-bench.jsonnet b/vm/ci/ci_common/common-bench.jsonnet index e700af993ceb..138e4e2d0c78 100644 --- a/vm/ci/ci_common/common-bench.jsonnet +++ b/vm/ci/ci_common/common-bench.jsonnet @@ -15,7 +15,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet'; timelimit: '1:30:00', }, - vm_bench_js_linux_amd64(bench_suite=null): vm.vm_java_20 + vm_common.svm_common_linux_amd64 + vm_common.sulong_linux + vm.custom_vm_linux + self.vm_bench_common + { + vm_bench_js_linux_amd64(bench_suite=null): vm.vm_java_21 + vm_common.svm_common_linux_amd64 + vm_common.sulong_linux + vm.custom_vm_linux + self.vm_bench_common + { cmd_base:: vm_common.mx_vm_common + ['--dynamicimports', 'js-benchmarks', 'benchmark', '--results-file', self.result_file], config_base:: ['--js-vm=graal-js', '--js-vm-config=default', '--jvm=graalvm-${VM_ENV}'], setup+: [ @@ -262,8 +262,8 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet'; vm_common.bench_daily_vm_linux_amd64 + self.vm_bench_polybench_nfi_linux_amd64 + vm.vm_java_20 + {name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-polybench-nfi-java20-linux-amd64', notify_groups:: ['polybench']}, - vm_common.bench_daily_vm_linux_amd64 + self.x52_js_bench_compilation_throughput(true) + vm.vm_java_20 + { name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-libgraal-pgo-throughput-js-typescript-java20-linux-amd64' }, - vm_common.bench_daily_vm_linux_amd64 + self.x52_js_bench_compilation_throughput(false) + vm.vm_java_20 + { name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-libgraal-no-pgo-throughput-js-typescript-java20-linux-amd64' }, + vm_common.bench_daily_vm_linux_amd64 + self.x52_js_bench_compilation_throughput(true) + vm.vm_java_21 + { name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-libgraal-pgo-throughput-js-typescript-java21-linux-amd64' }, + vm_common.bench_daily_vm_linux_amd64 + self.x52_js_bench_compilation_throughput(false) + vm.vm_java_21 + { name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-libgraal-no-pgo-throughput-js-typescript-java21-linux-amd64' }, vm_common.bench_daily_vm_linux_amd64 + self.vm_bench_js_linux_amd64() + { # Override `self.vm_bench_js_linux_amd64.run` @@ -274,7 +274,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet'; $.vm_bench_common.upload, ], timelimit: '45:00', - name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-agentscript-js-java20-linux-amd64', + name: 'daily-bench-vm-' + vm.vm_setup.short_name + '-agentscript-js-java21-linux-amd64', notify_groups:: ['javascript'], }, diff --git a/vm/ci/ci_common/common.jsonnet b/vm/ci/ci_common/common.jsonnet index 0fd83d471f8f..63d11e07f5a9 100644 --- a/vm/ci/ci_common/common.jsonnet +++ b/vm/ci/ci_common/common.jsonnet @@ -640,13 +640,13 @@ local devkits = graal_common.devkits; name: 'gate-vm-style-jdk20-linux-amd64', }, - vm.vm_java_20 + self.svm_common_linux_amd64 + self.sulong_linux + vm.custom_vm_linux + self.gate_vm_linux_amd64 + { + vm.vm_java_21 + self.svm_common_linux_amd64 + self.sulong_linux + vm.custom_vm_linux + self.gate_vm_linux_amd64 + { run: [ ['export', 'SVM_SUITE=' + vm.svm_suite], ['mx', '--dynamicimports', '$SVM_SUITE,/sulong', '--disable-polyglot', '--disable-libpolyglot', 'gate', '--no-warning-as-error', '--tags', 'build,sulong'], ], timelimit: '1:00:00', - name: 'gate-vm-native-sulong-linux-amd64', + name: 'gate-vm-native-sulong-' + self.jdk_version + '-linux-amd64', }, ] + (import 'libgraal.jsonnet').builds, diff --git a/vm/ci/ci_includes/vm-native.jsonnet b/vm/ci/ci_includes/vm-native.jsonnet index 6270688b96db..261298512dbf 100644 --- a/vm/ci/ci_includes/vm-native.jsonnet +++ b/vm/ci/ci_includes/vm-native.jsonnet @@ -3,7 +3,7 @@ local vm_common = import '../ci_common/common.jsonnet'; { local builds = [ - vm.vm_java_20 + vm_common.svm_common_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { + vm.vm_java_21 + vm_common.svm_common_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { run+: [ ['export', 'SVM_SUITE=' + vm.svm_suite], ['mx', '--dynamicimports', '$SVM_SUITE', '--disable-polyglot', '--disable-libpolyglot', 'gate', '--no-warning-as-error', '--tags', 'build,substratevm'], @@ -11,7 +11,7 @@ local vm_common = import '../ci_common/common.jsonnet'; timelimit: '40:00', name: 'gate-vm-native-substratevm-truffle-linux-amd64', }, - vm.vm_java_20 + vm_common.svm_common_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { + vm.vm_java_21 + vm_common.svm_common_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { run+: [ ['export', 'SVM_SUITE=' + vm.svm_suite], ['mx', '--dynamicimports', '$SVM_SUITE', '--disable-polyglot', '--disable-libpolyglot', 'gate', '--no-warning-as-error', '--tags', 'build,substratevm-quickbuild'], @@ -19,7 +19,7 @@ local vm_common = import '../ci_common/common.jsonnet'; timelimit: '40:00', name: 'gate-vm-native-substratevm-truffle-quickbuild-linux-amd64', }, - vm.vm_java_20 + vm_common.svm_common_linux_amd64 + vm_common.sulong_linux + vm_common.graalpython_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { + vm.vm_java_21 + vm_common.svm_common_linux_amd64 + vm_common.sulong_linux + vm_common.graalpython_linux_amd64 + vm.custom_vm_linux + vm_common.gate_vm_linux_amd64 + { run+: [ ['export', 'SVM_SUITE=' + vm.svm_suite], ['mx', '--dynamicimports', '$SVM_SUITE,graalpython', '--disable-polyglot', '--disable-libpolyglot', '--force-bash-launchers=lli,native-image', 'gate', '--no-warning-as-error', '--tags', 'build,python'], @@ -27,7 +27,7 @@ local vm_common = import '../ci_common/common.jsonnet'; timelimit: '45:00', name: 'gate-vm-native-graalpython-linux-amd64', }, - vm.vm_java_20 + vm_common.svm_common_linux_amd64 + vm_common.gate_vm_linux_amd64 + { + vm.vm_java_21 + vm_common.svm_common_linux_amd64 + vm_common.gate_vm_linux_amd64 + { run+: [ ['export', 'SVM_SUITE=' + vm.svm_suite], ['mx', '--dynamicimports', '$SVM_SUITE,/tools', '--disable-polyglot', '--skip-libraries=true', '--force-bash-launchers=gu,native-image-configure,polybench', 'gate', '--no-warning-as-error', '--tags', 'build,svm_tck_test,svm_sl_tck'], diff --git a/vm/ci/ci_includes/vm.jsonnet b/vm/ci/ci_includes/vm.jsonnet index e4f17e6124a6..5e0c31f75995 100644 --- a/vm/ci/ci_includes/vm.jsonnet +++ b/vm/ci/ci_includes/vm.jsonnet @@ -44,10 +44,10 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet'; ], }, - maven_17_20:: { + maven_17_21:: { downloads+: { JAVA_HOME: graal_common.jdks_data['labsjdk-ce-17'], - EXTRA_JAVA_HOMES: graal_common.jdks_data['labsjdk-ce-20'], + EXTRA_JAVA_HOMES: graal_common.jdks_data['labsjdk-ce-21'], }, mx_cmd_base:: ['mx', '--dynamicimports', '/tools,/compiler,/graal-js,/espresso,/substratevm', '--disable-installables=true', '--force-bash-launcher=true', '--skip-libraries=true'], build:: self.mx_cmd_base + ['build'], @@ -56,7 +56,7 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet'; (if repo == null then [] else [repo]), }, - maven_17_20_only_native:: self.maven_17_20 + { + maven_17_21_only_native:: self.maven_17_21 + { native_distributions:: 'TRUFFLE_NFI_NATIVE,SVM_HOSTED_NATIVE', mx_cmd_base:: ['mx', '--dynamicimports', '/substratevm', '--disable-installables=true', '--force-bash-launcher=true', '--skip-libraries=true'], build:: self.mx_cmd_base + ['build', '--dependencies', self.native_distributions], @@ -117,21 +117,21 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet'; }, local builds = [ - utils.add_gate_predicate(self.vm_java_20 + vm_common.gate_vm_linux_amd64 + { + utils.add_gate_predicate(self.vm_java_21 + vm_common.gate_vm_linux_amd64 + { run: [ ['mx', 'build'], ['mx', 'unittest', '--suite', 'vm'], ], name: 'gate-vm-unittest-linux-amd64', }, ['sdk', 'truffle', 'vm']), - utils.add_gate_predicate(self.vm_java_20 + graal_common.devkits['windows-jdk20'] + vm_common.gate_vm_windows_amd64 + { + utils.add_gate_predicate(self.vm_java_21 + graal_common.devkits['windows-jdk20'] + vm_common.gate_vm_windows_amd64 + { run: [ ['mx', 'build'], ['mx', 'unittest', '--suite', 'vm'], ], name: 'gate-vm-unittest-windows-amd64', }, ["sdk", "truffle", "vm"]), - self.vm_java_20 + vm_common.gate_vm_linux_amd64 + vm_common.sulong_linux + { + self.vm_java_21 + vm_common.gate_vm_linux_amd64 + vm_common.sulong_linux + { environment+: { DYNAMIC_IMPORTS: '/tools,/substratevm,/sulong', NATIVE_IMAGES: 'polyglot', @@ -142,49 +142,49 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet'; ], name: 'gate-vm-build-without-vcs-linux-amd64', }, - vm_common.linux_deploy + vm_common.gate_vm_linux_amd64 + self.maven_17_20 + vm_common.sulong_linux + { - run: [ $.maven_17_20.build, $.maven_17_20.deploy(repo='lafo-maven', dry_run=true)], + vm_common.linux_deploy + vm_common.gate_vm_linux_amd64 + self.maven_17_21 + vm_common.sulong_linux + { + run: [ $.maven_17_21.build, $.maven_17_21.deploy(repo='lafo-maven', dry_run=true)], name: 'gate-vm-maven-dry-run-linux-amd64', }, - vm_common.linux_deploy + vm_common.deploy_vm_linux_amd64 + self.maven_17_20 + vm_common.sulong_linux + { - run: [ $.maven_17_20.build, $.maven_17_20.deploy(repo='lafo-maven')], + vm_common.linux_deploy + vm_common.deploy_vm_linux_amd64 + self.maven_17_21 + vm_common.sulong_linux + { + run: [ $.maven_17_21.build, $.maven_17_21.deploy(repo='lafo-maven')], name: 'post-merge-deploy-vm-maven-linux-amd64', timelimit: '45:00', notify_groups:: ['deploy'], }, - vm_common.linux_deploy + vm_common.gate_vm_linux_aarch64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven', dry_run=true)], + vm_common.linux_deploy + vm_common.gate_vm_linux_aarch64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven', dry_run=true)], name: 'gate-vm-maven-dry-run-linux-aarch64', }, - vm_common.linux_deploy + vm_common.deploy_vm_linux_aarch64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven')], + vm_common.linux_deploy + vm_common.deploy_vm_linux_aarch64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven')], name: 'post-merge-deploy-vm-maven-linux-aarch64', notify_groups:: ['deploy'], }, - vm_common.darwin_deploy + vm_common.gate_vm_darwin_amd64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven', dry_run=true)], + vm_common.darwin_deploy + vm_common.gate_vm_darwin_amd64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven', dry_run=true)], name: 'gate-vm-maven-dry-run-darwin-amd64', }, - vm_common.darwin_deploy + vm_common.gate_vm_darwin_aarch64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven', dry_run=true)], + vm_common.darwin_deploy + vm_common.gate_vm_darwin_aarch64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven', dry_run=true)], name: 'gate-vm-maven-dry-run-darwin-aarch64', }, - vm_common.darwin_deploy + vm_common.deploy_daily_vm_darwin_amd64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven')], + vm_common.darwin_deploy + vm_common.deploy_daily_vm_darwin_amd64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven')], name: 'daily-deploy-vm-maven-darwin-amd64', notify_groups:: ['deploy'], }, - vm_common.darwin_deploy + vm_common.deploy_daily_vm_darwin_aarch64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven')], + vm_common.darwin_deploy + vm_common.deploy_daily_vm_darwin_aarch64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven')], name: 'daily-deploy-vm-maven-darwin-aarch64', notify_groups:: ['deploy'], }, - vm_common.svm_common_windows_amd64("17") + vm_common.gate_vm_windows_amd64 + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven', dry_run=true)], + vm_common.svm_common_windows_amd64("17") + vm_common.gate_vm_windows_amd64 + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven', dry_run=true)], name: 'gate-vm-maven-dry-run-windows-amd64', }, - vm_common.svm_common_windows_amd64("17") + vm_common.deploy_daily_vm_windows + self.maven_17_20_only_native + { - run: [ $.maven_17_20_only_native.build, $.maven_17_20_only_native.deploy(repo='lafo-maven')], + vm_common.svm_common_windows_amd64("17") + vm_common.deploy_daily_vm_windows + self.maven_17_21_only_native + { + run: [ $.maven_17_21_only_native.build, $.maven_17_21_only_native.deploy(repo='lafo-maven')], name: 'daily-deploy-vm-maven-windows-amd64', notify_groups:: ['deploy'], },