Skip to content

[GR-65254] Remove vm_common.{sulong,truffleruby,graalpy,wasm,svm_common} #11356

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

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
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
14 changes: 9 additions & 5 deletions ci/common.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,12 @@ local common_json = import "../common.json";
},
},

cmake:: {
packages+: {
cmake: "==3.22.2",
},
},

gradle:: {
downloads+: {
GRADLE_JAVA_HOME: jdks_data["oraclejdk21"],
Expand All @@ -221,10 +227,8 @@ local common_json = import "../common.json";
# GR-49566: SpotBugs does not yet run on JDK 22
spotbugs: code_tools,

sulong:: {
packages+: {
cmake: "==3.22.2",
} + if self.os == "windows" then {
sulong:: self.cmake + {
packages+: if self.os == "windows" then {
msvc_source: "==14.0",
} else {},
},
Expand Down Expand Up @@ -259,7 +263,7 @@ local common_json = import "../common.json";
} else {},
},

graalpy:: self.gradle + {
graalpy:: self.gradle + self.cmake + {
packages+: if (self.os == "linux") then {
libffi: '>=3.2.1',
bzip2: '>=1.0.6',
Expand Down
2 changes: 1 addition & 1 deletion graal-common.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"README": "This file contains definitions that are useful for the jsonnet CI files of the graal and graal-enterprise repositories.",
"ci": {
"overlay": "aa82bb70f9d2919c706ff28ef3331cab574d5e51"
"overlay": "ed6845f6ba14623db7c6e2f71f0ed9f6b0efb708"
}
}
2 changes: 0 additions & 2 deletions sdk/mx.sdk/mx_sdk_vm_impl.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,6 @@ def unicode_utf8(string):

default_components = []

USE_LEGACY_GU = mx.str_to_bool(mx.get_env('LEGACY_GU', 'false'))

mx.add_argument('--base-dist-name', help='Sets the name of the GraalVM base image ( for complete, ruby ... images), default to "base"', default='base')


Expand Down
10 changes: 5 additions & 5 deletions vm/ci/ci_common/common-bench.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet';

vm_bench_common: self.vm_bench_base(machine_name='x52') + { capabilities+: ['tmpfs25g'] },

vm_bench_js_linux_amd64(bench_suite=null): vm.vm_java_Latest + vm_common.svm_common + vm_common.sulong + vm.custom_vm + self.vm_bench_common + {
vm_bench_js_linux_amd64(bench_suite=null): vm.vm_java_Latest + common.deps.svm + common.deps.sulong + vm.custom_vm + 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+: [
Expand Down Expand Up @@ -59,7 +59,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet';
base_cmd:: ['mx', '--env', env, '--dy', 'polybenchmarks'],
},

vm_bench_polybenchmarks_linux_build: vm_common.svm_common + vm_common.truffleruby + vm_common.graalpy + vm.custom_vm + vm.vm_java_Latest + self.polybench_hpc_linux_common(shape='e4_36_256') + self.vm_bench_polybenchmarks_base(env='polybench-${VM_ENV}') + {
vm_bench_polybenchmarks_linux_build: common.deps.svm + common.deps.truffleruby + common.deps.graalpy + vm.custom_vm + vm.vm_java_Latest + self.polybench_hpc_linux_common(shape='e4_36_256') + self.vm_bench_polybenchmarks_base(env='polybench-${VM_ENV}') + {
setup+: [
self.base_cmd + ['sforceimports'],
],
Expand All @@ -80,7 +80,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet';
},

# TODO (GR-60584): re-enable espresso polybench jobs once polybench is unchained
vm_bench_polybenchmarks_linux_common(vm_config='jvm', is_gate=false, suite='default:~r[.*jar]', shape=null): vm_common.svm_common + vm_common.truffleruby + vm.custom_vm + vm.vm_java_Latest + self.polybench_hpc_linux_common(shape=shape) + self.vm_bench_polybenchmarks_base(env='polybench-${VM_ENV}') {
vm_bench_polybenchmarks_linux_common(vm_config='jvm', is_gate=false, suite='default:~r[.*jar]', shape=null): common.deps.svm + common.deps.truffleruby + vm.custom_vm + vm.vm_java_Latest + self.polybench_hpc_linux_common(shape=shape) + self.vm_bench_polybenchmarks_base(env='polybench-${VM_ENV}') {
bench_cmd:: self.base_cmd + ['benchmark', '--results-file', self.result_file],
setup+: [
self.base_cmd + ['sforceimports'],
Expand All @@ -106,7 +106,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet';
timelimit: if (is_gate) then '1:00:00' else '1:30:00',
} + (if is_gate then self.vm_bench_base(machine_name=null) else self.vm_bench_common),

vm_bench_polybench_linux_common(env='polybench-${VM_ENV}', fail_fast=false, skip_machine=false): (if skip_machine then self.vm_bench_base(machine_name=null) else self.vm_bench_common) + vm_common.svm_common + vm_common.truffleruby + vm_common.graalpy + vm.custom_vm + vm_common.wasm {
vm_bench_polybench_linux_common(env='polybench-${VM_ENV}', fail_fast=false, skip_machine=false): (if skip_machine then self.vm_bench_base(machine_name=null) else self.vm_bench_common) + common.deps.svm + common.deps.truffleruby + common.deps.graalpy + common.deps.wasm + vm.custom_vm {
base_cmd:: ['mx', '--env', env],
bench_cmd:: self.base_cmd + ['benchmark'] + (if (fail_fast) then ['--fail-fast'] else []),
interpreter_bench_cmd(vmConfig):: self.bench_cmd +
Expand Down Expand Up @@ -275,7 +275,7 @@ local repo_config = import '../../../ci/repo-configuration.libsonnet';
notify_groups:: ['compiler_bench']
},

vm_bench_polybench_nfi_linux_amd64: self.vm_bench_common + vm_common.svm_common + self.vm_bench_polybench_nfi,
vm_bench_polybench_nfi_linux_amd64: self.vm_bench_common + common.deps.svm + self.vm_bench_polybench_nfi,

local builds = [
# We used to expand `${common_vm_linux}` here to work around some limitations in the version of pyhocon that we use in the CI
Expand Down
25 changes: 5 additions & 20 deletions vm/ci/ci_common/common.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -73,24 +73,12 @@ local devkits = graal_common.devkits;
},
},

# SULONG
sulong: graal_common.deps.sulong,

# TRUFFLERUBY, needs OpenSSL 1.0.2+, so OracleLinux 7+
truffleruby: graal_common.deps.sulong + graal_common.deps.truffleruby,

fastr_no_recommended: {
environment+: {
FASTR_NO_RECOMMENDED: 'true'
},
},

# GRAALPYTHON
graalpy: self.sulong + graal_common.deps.graalpy,

# WASM
wasm: graal_common.deps.wasm,

vm_linux_amd64_common: graal_common.deps.svm {
capabilities+: ['manycores', 'ram16gb', 'fast'],
},
Expand Down Expand Up @@ -146,8 +134,7 @@ local devkits = graal_common.devkits;
mx_vm_complete: vm.mx_cmd_base_no_env + ['--env', '${VM_ENV}-complete'] + self.mx_vm_cmd_suffix,

// svm_common includes the dependencies for all platforms besides windows amd64
svm_common: graal_common.deps.svm,
svm_common_windows_amd64(jdk): self.svm_common + graal_common.devkits["windows-jdk" + jdk],
svm_common_windows_amd64(jdk): graal_common.deps.svm + graal_common.devkits["windows-jdk" + jdk],

maven_deploy_sdk: ['--suite', 'sdk', 'maven-deploy', '--validate', 'none', '--all-distribution-types', '--with-suite-revisions-metadata'],
deploy_artifacts_sdk(os, base_dist_name=null): (if base_dist_name != null then ['--base-dist-name=' + base_dist_name] else []) + ['--suite', 'sdk', 'deploy-artifacts', '--uploader', if os == 'windows' then 'artifact_uploader.cmd' else 'artifact_uploader'],
Expand Down Expand Up @@ -176,9 +163,7 @@ local devkits = graal_common.devkits;
$.mx_vm_complete + self.artifact_deploy_standalones_dry_run(os)
],

ruby_vm_build: self.svm_common + self.sulong + self.truffleruby + vm.custom_vm,
ruby_python_vm_build: self.ruby_vm_build + self.graalpy,
full_vm_build: self.ruby_python_vm_build + graal_common.deps.fastr,
full_vm_build: graal_common.deps.svm + graal_common.deps.sulong + graal_common.deps.truffleruby + graal_common.deps.graalpy + graal_common.deps.fastr + vm.custom_vm,

graalvm_complete_build_deps(edition, os, arch, java_version):
local java_deps(edition) = {
Expand All @@ -201,7 +186,7 @@ local devkits = graal_common.devkits;
if (os == 'windows') then
if (arch == 'amd64') then
# Windows/AMD64
java_deps(edition) + (if (java_version == 'latest') then self.svm_common_windows_amd64("Latest") else self.svm_common_windows_amd64(java_version)) + self.js_windows_common + self.sulong
java_deps(edition) + (if (java_version == 'latest') then self.svm_common_windows_amd64("Latest") else self.svm_common_windows_amd64(java_version)) + self.js_windows_common + graal_common.deps.sulong
else
error 'Unknown windows arch: ' + arch
else if (os == 'linux' || os == 'darwin') then
Expand Down Expand Up @@ -567,9 +552,9 @@ local devkits = graal_common.devkits;
# Darwin/AARCH64
deploy_vm_standalones_javaLatest_darwin_aarch64: vm.vm_java_Latest + self.full_vm_build + self.darwin_deploy + self.vm_base('darwin', 'aarch64', 'daily', deploy=true) + self.deploy_graalvm_standalones('latest') + {name: 'daily-deploy-vm-standalones-java-latest-darwin-aarch64', notify_groups:: ["deploy"], notify_emails+: ["[email protected]"], timelimit: '3:00:00'},
# Windows/AMD64
deploy_vm_standalones_javaLatest_windows_amd64: vm.vm_java_Latest + self.svm_common_windows_amd64('Latest') + self.js_windows_common + self.sulong + self.vm_base('windows', 'amd64', 'daily', deploy=true, jdk_hint='Latest') + self.deploy_graalvm_standalones('latest') + self.deploy_build + {name: 'daily-deploy-vm-standalones-java-latest-windows-amd64', timelimit: '2:30:00', notify_groups:: ["deploy"]},
deploy_vm_standalones_javaLatest_windows_amd64: vm.vm_java_Latest + self.svm_common_windows_amd64('Latest') + self.js_windows_common + graal_common.deps.sulong + self.vm_base('windows', 'amd64', 'daily', deploy=true, jdk_hint='Latest') + self.deploy_graalvm_standalones('latest') + self.deploy_build + {name: 'daily-deploy-vm-standalones-java-latest-windows-amd64', timelimit: '2:30:00', notify_groups:: ["deploy"]},

local sulong_vm_tests = self.svm_common + self.sulong + vm.custom_vm + self.vm_base('linux', 'amd64', 'gate') + {
local sulong_vm_tests = graal_common.deps.svm + graal_common.deps.sulong + vm.custom_vm + self.vm_base('linux', 'amd64', 'gate') + {
run: [
['export', 'SVM_SUITE=' + vm.svm_suite],
['mx', '--dynamicimports', '$SVM_SUITE,/sulong', '--disable-polyglot', '--disable-libpolyglot', 'gate', '--no-warning-as-error', '--tags', 'build,sulong'],
Expand Down
2 changes: 1 addition & 1 deletion vm/ci/ci_common/libgraal.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ local galahad = import '../../../ci/ci_common/galahad-common.libsonnet';
if (os_arch == 'windows-amd64') then
c.svm_common_windows_amd64(jdk)
else
c.svm_common,
graal_common.deps.svm,

local all_os_arches = [
"linux-amd64",
Expand Down
8 changes: 4 additions & 4 deletions vm/ci/ci_includes/vm-native.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ local vm_common = import '../ci_common/common.jsonnet';
local graal_common = import '../../../ci/ci_common/common.jsonnet';

{
local truffle_native_tck = vm_common.svm_common + {
local truffle_native_tck = graal_common.deps.svm + {
run+: [
['mx', '--env', 'ce', '--dynamicimports', '/tools', '--native-images=lib:jvmcicompiler', 'gate', '--tags', 'build,truffle-native-tck,truffle-native-tck-sl'],
],
Expand All @@ -14,7 +14,7 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet';
name: self.targets[0] + '-vm-truffle-native-tck-labs' + self.jdk_name + '-linux-amd64',
},

local truffle_native_tck_wasm = vm_common.svm_common + {
local truffle_native_tck_wasm = graal_common.deps.svm + {
run+: [
['mx', '--env', 'ce', '--dynamicimports', '/wasm', '--native-images=lib:jvmcicompiler', 'gate', '--tags', 'build,truffle-native-tck-wasm'],
],
Expand All @@ -24,7 +24,7 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet';
name: self.targets[0] + '-vm-truffle-native-tck-wasm-labs' + self.jdk_name + '-linux-amd64',
},

local truffle_maven_downloader = vm_common.svm_common + vm_common.sulong + {
local truffle_maven_downloader = graal_common.deps.svm + graal_common.deps.sulong + {
run+: [
['export', 'SVM_SUITE=' + vm.svm_suite],
['mx', '--env', 'ce-llvm', '--native-images=', 'gate', '--no-warning-as-error', '--tags', 'build,maven-downloader'],
Expand All @@ -39,7 +39,7 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet';
},

local builds = [
vm.vm_java_Latest + vm_common.svm_common + vm_common.sulong + vm_common.graalpy + vm.custom_vm + vm_common.vm_base('linux', 'amd64', 'gate') + {
vm.vm_java_Latest + graal_common.deps.svm + graal_common.deps.sulong + graal_common.deps.graalpy + vm.custom_vm + vm_common.vm_base('linux', 'amd64', 'gate') + {
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'],
Expand Down
2 changes: 1 addition & 1 deletion vm/ci/ci_includes/vm.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ local graal_common = import '../../../ci/ci_common/common.jsonnet';
],
name: 'gate-vm-unittest-windows-amd64',
}, ["sdk", "truffle", "vm"]),
self.vm_java_Latest + vm_common.vm_base('linux', 'amd64', 'gate') + vm_common.sulong + {
self.vm_java_Latest + vm_common.vm_base('linux', 'amd64', 'gate') + graal_common.deps.sulong + {
environment+: {
DYNAMIC_IMPORTS: '/tools,/substratevm,/sulong',
NATIVE_IMAGES: 'polyglot',
Expand Down
2 changes: 0 additions & 2 deletions vm/mx.vm/mx_vm_gate.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,13 @@ class VmGateTasks:
sulong = 'sulong'
sulong_aot = 'sulong-aot'
graal_js_all = 'graal-js'
graal_js_smoke = 'graal-js-smoke'
graal_js_tests = 'graal-js-tests'
graal_js_tests_compiled = 'graal-js-tests-compiled'
graal_nodejs = 'graal-nodejs'
truffleruby = 'truffleruby'
ruby = 'ruby'
python = 'python'
fastr = 'fastr'
graalpython = 'graalpython'
integration = 'integration'
tools = 'tools'
libgraal = 'libgraal'
Expand Down