forked from oracle/graal
-
Notifications
You must be signed in to change notification settings - Fork 5
/
ci.jsonnet
68 lines (54 loc) · 2.25 KB
/
ci.jsonnet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# Common
local common = import 'ci/ci_common/common.jsonnet';
local graal_common = import 'graal-common.json';
# Compiler
local compiler = import 'compiler/ci/ci.jsonnet';
# GraalWasm
local wasm = import 'wasm/ci/ci.jsonnet';
# Espresso
local espresso = import 'espresso/ci/ci.jsonnet';
# Regex
local regex = import 'regex/ci/ci.jsonnet';
# SDK
local sdk = import 'sdk/ci/ci.jsonnet';
# SubstrateVM
local substratevm = import 'substratevm/ci/ci.jsonnet';
# Sulong
local sulong = import 'sulong/ci/ci.jsonnet';
# Tools
local tools = import 'tools/ci/ci.jsonnet';
# Truffle
local truffle = import 'truffle/ci/ci.jsonnet';
# JavaDoc
local javadoc = import "ci_includes/publish-javadoc.jsonnet";
# VM
local vm = import 'vm/ci/ci_includes/vm.jsonnet';
# Visualizer
local visualizer = import 'visualizer/ci/ci.jsonnet';
local verify_ci = (import 'ci/ci_common/ci-check.libsonnet').verify_ci;
# Filter builds to include/exclude jobs whose name contains "libgraal"
local libgraal(builds, include=true) = [b for b in builds if (std.findSubstr("libgraal", b.name) != []) == include];
{
# Ensure that non-hidden entries in ci/common.jsonnet and ci/ci_common/common.jsonnet can be resolved.
assert std.length(std.toString(import 'ci/ci_common/common.jsonnet')) > 0,
ci_resources:: (import 'ci/ci_common/ci-resources.libsonnet'),
overlay: graal_common.ci.overlay,
specVersion: "4",
builds: [common.add_excludes_guard(b) for b in (
common.with_components(compiler.builds + libgraal(vm.builds), ["compiler"]) +
common.with_components(wasm.builds, ["wasm"]) +
common.with_components(espresso.builds, ["espresso"]) +
common.with_components(regex.builds, ["regex"]) +
common.with_components(sdk.builds, ["sdk"]) +
common.with_components(substratevm.builds, ["svm"]) +
common.with_components(sulong.builds, ["sulong"]) +
common.with_components(tools.builds, ["tools"]) +
common.with_components(truffle.builds, ["truffle"]) +
common.with_components(javadoc.builds, ["javadoc"]) +
common.with_components(libgraal(vm.builds, false), ["vm"]) +
common.with_components(visualizer.builds, ["visualizer"])
)],
assert verify_ci(self.builds),
// verify that the run-spec demo works
assert (import "ci/ci_common/run-spec-demo.jsonnet").check(),
}