Skip to content

Commit 0f5ae4b

Browse files
committed
CI (Buildkite): Add package_linux and tester_linux for more Linux architectures
1 parent c5f3487 commit 0f5ae4b

File tree

19 files changed

+457
-186
lines changed

19 files changed

+457
-186
lines changed

.buildkite/pipelines/experimental/0_webui.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
agents:
55
queue: "julia"
66
sandbox.jl: "true"
7-
87
steps:
98
- label: ":unlock: Unlock secrets, launch pipelines"
109
plugins:
@@ -16,9 +15,8 @@ steps:
1615
# pipelines.
1716
unsigned_pipelines:
1817
- .buildkite/pipelines/experimental/launch_unsigned_builders.yml
19-
2018
# Our signed pipelines must have a `signature` or `signature_file` parameter that
2119
# verifies the treehash of the pipeline itself and the inputs listed in `inputs`
2220
# signed_pipelines:
2321
# - pipeline: .buildkite/pipelines/experimental/misc/foo_bar_baz.yml
24-
# signature: "my_signature"
22+
# signature_file: .buildkite/pipelines/experimental/misc/foo_bar_baz.yml.signature

.buildkite/pipelines/experimental/misc/sanitizers.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,9 @@ agents:
33
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
44
sandbox.jl: "true"
55
os: "linux"
6-
76
steps:
87
- label: "asan"
9-
key: asan
8+
key: "asan"
109
plugins:
1110
- JuliaCI/julia#v1:
1211
version: 1.6
@@ -17,13 +16,10 @@ steps:
1716
gid: 1000
1817
workspaces:
1918
- "/cache/repos:/cache/repos"
20-
# `contrib/check-asan.jl` needs a `julia` binary:
19+
# `contrib/check-asan.jl` needs a `julia` binary inside the inner sandbox:
2120
- JuliaCI/julia#v1:
2221
version: 1.6
2322
timeout_in_minutes: 120
24-
# notify:
25-
# - github_commit_status:
26-
# context: "asan"
2723
commands: |
2824
echo "--- Build julia-debug with ASAN"
29-
contrib/asan/build.sh ./tmp/test-asan -j$${JULIA_NUM_CORES} debug
25+
contrib/asan/build.sh ./tmp/test-asan -j$${JULIA_CPU_THREADS:?} debug

.buildkite/pipelines/main/0_webui.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
agents:
55
queue: "julia"
66
sandbox.jl: "true"
7-
87
steps:
98
- label: ":unlock: Unlock secrets, launch pipelines"
109
plugins:

.buildkite/pipelines/main/launch_unsigned_builders.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,19 @@
1515
steps:
1616
- label: ":buildkite: Launch unsigned builders"
1717
commands: |
18-
# First, we launch the `whitespace` builder, because we want that builder to finish as quickly as possible.
18+
# Launch the `whitespace` builder first, because we want that builder to finish as quickly as possible.
1919
buildkite-agent pipeline upload .buildkite/pipelines/main/misc/whitespace.yml
2020
21-
# Next, we launch the miscellaneous builders in alphabetical order.
21+
# Launch the miscellaneous builders in alphabetical order.
2222
buildkite-agent pipeline upload .buildkite/pipelines/main/misc/doctest.yml
2323
buildkite-agent pipeline upload .buildkite/pipelines/main/misc/embedding.yml
2424
buildkite-agent pipeline upload .buildkite/pipelines/main/misc/llvmpasses.yml
2525
26-
# Finally, we launch the platform builders (`package_*`) and (`tester_*`) in alphabetical order.
27-
buildkite-agent pipeline upload .buildkite/pipelines/main/platforms/linux64.yml
26+
# Launch all of the platform builders.
27+
bash .buildkite/pipelines/main/platforms/platforms.sh package_linux
28+
bash .buildkite/pipelines/main/platforms/platforms.sh tester_linux
29+
30+
# Launch the "dummy job" for creating grouped commit statuses.
31+
buildkite-agent pipeline upload .buildkite/pipelines/main/misc/commit_statuses.yml
2832
agents:
2933
queue: julia
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
agents:
2+
queue: "julia"
3+
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
4+
sandbox.jl: "true"
5+
os: "linux"
6+
steps:
7+
- label: "analyze"
8+
key: "analyze"
9+
depends_on:
10+
- "analyzegc"
11+
- "asan"
12+
plugins:
13+
- JuliaCI/julia#v1:
14+
version: 1.6
15+
- staticfloat/sandbox#v1:
16+
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v3.1/package_linux.x86_64.tar.gz
17+
rootfs_treehash: "8c33c341a864852629b8aac01a6eb6a79b73570e"
18+
uid: 1000
19+
gid: 1000
20+
workspaces:
21+
# Include `/cache/repos` so that our `git` version introspection works.
22+
- "/cache/repos:/cache/repos"
23+
timeout_in_minutes: 10
24+
notify:
25+
- github_commit_status:
26+
context: "analyze"
27+
commands: |
28+
echo "All `analyze` jobs completed successfully."
29+
- label: "docs"
30+
key: "docs"
31+
depends_on:
32+
- "doctest"
33+
# - "docdeploy"
34+
plugins:
35+
- JuliaCI/julia#v1:
36+
version: 1.6
37+
- staticfloat/sandbox#v1:
38+
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v3.1/package_linux.x86_64.tar.gz
39+
rootfs_treehash: "8c33c341a864852629b8aac01a6eb6a79b73570e"
40+
uid: 1000
41+
gid: 1000
42+
workspaces:
43+
# Include `/cache/repos` so that our `git` version introspection works.
44+
- "/cache/repos:/cache/repos"
45+
timeout_in_minutes: 10
46+
notify:
47+
- github_commit_status:
48+
context: "docs"
49+
commands: |
50+
echo "All `docs` jobs completed successfully."
51+
- label: "package"
52+
key: "package"
53+
depends_on:
54+
- "package_linux32"
55+
- "package_linux64"
56+
plugins:
57+
- JuliaCI/julia#v1:
58+
version: 1.6
59+
- staticfloat/sandbox#v1:
60+
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v3.1/package_linux.x86_64.tar.gz
61+
rootfs_treehash: "8c33c341a864852629b8aac01a6eb6a79b73570e"
62+
uid: 1000
63+
gid: 1000
64+
workspaces:
65+
# Include `/cache/repos` so that our `git` version introspection works.
66+
- "/cache/repos:/cache/repos"
67+
timeout_in_minutes: 10
68+
notify:
69+
- github_commit_status:
70+
context: "package"
71+
commands: |
72+
echo "All `package` jobs completed successfully."
73+
- label: "test"
74+
key: "test"
75+
depends_on:
76+
- "embedding"
77+
- "llvmpasses"
78+
- "tester_linux32"
79+
- "tester_linux64_st"
80+
- "tester_linux64_mt"
81+
- "tester_linux64_st_rr"
82+
- "tester_linux64_mt_rr"
83+
plugins:
84+
- JuliaCI/julia#v1:
85+
version: 1.6
86+
- staticfloat/sandbox#v1:
87+
rootfs_url: https://github.com/JuliaCI/rootfs-images/releases/download/v3.1/package_linux.x86_64.tar.gz
88+
rootfs_treehash: "8c33c341a864852629b8aac01a6eb6a79b73570e"
89+
uid: 1000
90+
gid: 1000
91+
workspaces:
92+
# Include `/cache/repos` so that our `git` version introspection works.
93+
- "/cache/repos:/cache/repos"
94+
timeout_in_minutes: 10
95+
notify:
96+
- github_commit_status:
97+
context: "test"
98+
commands: |
99+
echo "All `test` jobs completed successfully."

.buildkite/pipelines/main/misc/doctest.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ agents:
33
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
44
sandbox.jl: "true"
55
os: "linux"
6-
76
steps:
87
- label: "doctest"
98
key: doctest
@@ -31,6 +30,3 @@ steps:
3130
echo "--- Run Julia doctests"
3231
JULIA_NUM_THREADS=1 make -C doc doctest=true
3332
timeout_in_minutes: 45
34-
notify:
35-
- github_commit_status:
36-
context: "doctest"

.buildkite/pipelines/main/misc/embedding.yml

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ agents:
33
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
44
sandbox.jl: "true"
55
os: "linux"
6-
76
steps:
87
- label: "embedding"
98
key: "embedding"
@@ -20,15 +19,11 @@ steps:
2019
- "/cache/repos:/cache/repos"
2120
commands: |
2221
prefix="/tmp/prefix"
23-
echo "+++ Build julia, deploy to $${prefix}"
24-
make -j$${JULIA_NUM_CORES} JULIA_PRECOMPILE=0 prefix=$${prefix} install
22+
echo "+++ Build julia, deploy to $${prefix:?}"
23+
make -j$${JULIA_CPU_THREADS:?} JULIA_PRECOMPILE=0 prefix=$${prefix:?} install
2524
2625
embedding_output="/tmp/embedding-test"
27-
echo "+++ Run embedding tests, deploy to $${embedding_output}"
28-
mkdir -p "$${embedding_output}"
29-
make -j$${JULIA_NUM_CORES} -C test/embedding JULIA="$${prefix}/bin/julia" BIN="$${embedding_output}"
30-
26+
echo "+++ Run embedding tests, deploy to $${embedding_output:?}"
27+
mkdir -p "$${embedding_output:?}"
28+
make -j$${JULIA_CPU_THREADS:?} -C test/embedding JULIA="$${prefix:?}/bin/julia" BIN="$${embedding_output:?}"
3129
timeout_in_minutes: 60
32-
notify:
33-
- github_commit_status:
34-
context: "embedding"

.buildkite/pipelines/main/misc/llvmpasses.yml

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ agents:
33
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
44
sandbox.jl: "true"
55
os: "linux"
6-
76
steps:
87
- label: "analyzegc"
98
key: "analyzegc"
@@ -18,15 +17,11 @@ steps:
1817
- "/cache/repos:/cache/repos"
1918
commands: |
2019
echo "--- Install in-tree LLVM dependencies"
21-
make -j$${JULIA_NUM_CORES} -C deps install-llvm install-clang install-llvm-tools install-libuv install-utf8proc install-unwind
20+
make -j$${JULIA_CPU_THREADS:?} -C deps install-llvm install-clang install-llvm-tools install-libuv install-utf8proc install-unwind
2221
echo "+++ run clangsa/analyzegc"
23-
make -j$${JULIA_NUM_CORES} -C test/clangsa
24-
make -j$${JULIA_NUM_CORES} -C src analyzegc
22+
make -j$${JULIA_CPU_THREADS:?} -C test/clangsa
23+
make -j$${JULIA_CPU_THREADS:?} -C src analyzegc
2524
timeout_in_minutes: 60
26-
notify:
27-
- github_commit_status:
28-
context: "analyzegc"
29-
3025
- label: "llvmpasses"
3126
key: "llvmpasses"
3227
plugins:
@@ -41,12 +36,9 @@ steps:
4136
- "/cache/repos:/cache/repos"
4237
commands: |
4338
echo "--- make release"
44-
make -j$${JULIA_NUM_CORES} release JULIA_PRECOMPILE=0
39+
make -j$${JULIA_CPU_THREADS:?} release JULIA_PRECOMPILE=0
4540
echo "--- make src/install-analysis-deps"
46-
make -j$${JULIA_NUM_CORES} -C src install-analysis-deps
41+
make -j$${JULIA_CPU_THREADS:?} -C src install-analysis-deps
4742
echo "+++ make test/llvmpasses"
48-
make -j$${JULIA_NUM_CORES} -C test/llvmpasses
43+
make -j$${JULIA_CPU_THREADS:?} -C test/llvmpasses
4944
timeout_in_minutes: 60
50-
notify:
51-
- github_commit_status:
52-
context: "llvmpasses"

.buildkite/pipelines/main/misc/whitespace.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ agents:
33
# Only run on `sandbox.jl` machines (not `docker`-isolated ones) since we need nestable sandboxing
44
sandbox.jl: "true"
55
os: "linux"
6-
76
steps:
87
- label: "whitespace"
98
key: "whitespace"
@@ -15,9 +14,9 @@ steps:
1514
rootfs_treehash: "8c33c341a864852629b8aac01a6eb6a79b73570e"
1615
workspaces:
1716
- "/cache/repos:/cache/repos"
18-
commands: |
19-
make -j$${JULIA_NUM_CORES} check-whitespace
2017
timeout_in_minutes: 10
2118
notify:
2219
- github_commit_status:
2320
context: "whitespace"
21+
commands: |
22+
make -j$${JULIA_CPU_THREADS:?} check-whitespace

.buildkite/pipelines/main/platforms/linux64.yml

Lines changed: 0 additions & 95 deletions
This file was deleted.

0 commit comments

Comments
 (0)