File tree Expand file tree Collapse file tree 4 files changed +138
-0
lines changed Expand file tree Collapse file tree 4 files changed +138
-0
lines changed Original file line number Diff line number Diff line change
1
+ steps :
2
+ - label : " :rocket: Launch matrix of options"
3
+ commands : |
4
+ # These variables are available for templating in our child pipelines
5
+ export JULIA_VERSION OS ARCH AGENT_ARCH ROOTFS_URL ROOTFS_HASH DOCKER_IMAGE
6
+
7
+ function upload_pipeline() {
8
+ buildkite-agent pipeline upload .buildkite/test_$${OS}.yml
9
+ }
10
+
11
+ # We'll test on the following julia versions
12
+ for JULIA_VERSION in 1.8 nightly; do
13
+ # First, linux
14
+ OS="linux"
15
+
16
+ ARCH="x86_64"
17
+ AGENT_ARCH="x86_64"
18
+ ROOTFS_URL="https://github.com/JuliaCI/rootfs-images/releases/download/v5.26/package_linux.x86_64.tar.gz"
19
+ ROOTFS_HASH="5b0b851aca3c941b900a1301c13922c6cfc7f211"
20
+ upload_pipeline
21
+
22
+ # We still schedule this one on an x86_64 machine, but use an i686 rootfs
23
+ ARCH="i686"
24
+ AGENT_ARCH="x86_64"
25
+ ROOTFS_URL="https://github.com/JuliaCI/rootfs-images/releases/download/v5.26/package_linux.i686.tar.gz"
26
+ ROOTFS_HASH="abe9ca251b93980e444738b3996779d60ea7045d"
27
+ upload_pipeline
28
+
29
+ ARCH="aarch64"
30
+ AGENT_ARCH="aarch64"
31
+ ROOTFS_URL="https://github.com/JuliaCI/rootfs-images/releases/download/v5.26/package_linux.aarch64.tar.gz"
32
+ ROOTFS_HASH="dcf39d10ba43bf13c75d5031c3a88f125780033b"
33
+ upload_pipeline
34
+
35
+
36
+ # Next, windows
37
+ OS="windows"
38
+ ARCH="x86_64"
39
+ AGENT_ARCH="x86_64"
40
+ DOCKER_IMAGE="juliapackaging/package-windows-x86_64:v5.44"
41
+ upload_pipeline
42
+
43
+ # same as for Linux, we schedule on an x86_64 machine, but use an i686 docker image
44
+ OS="windows"
45
+ ARCH="i686"
46
+ AGENT_ARCH="x86_64"
47
+ DOCKER_IMAGE="juliapackaging/package-windows-i686:v5.44"
48
+ upload_pipeline
49
+
50
+
51
+
52
+ # Finally, macOS
53
+ OS="macos"
54
+ for ARCH in x86_64 aarch64; do
55
+ AGENT_ARCH="$${ARCH}"
56
+ upload_pipeline
57
+ done
58
+ done
59
+ agents :
60
+ queue : " juliaecosystem"
61
+
62
+ - label : " func_list idempotency"
63
+ commands : |
64
+ cd ext/gensymbol
65
+ ./generate_func_list.sh
66
+ git diff --exit-code
67
+ agents :
68
+ queue : " juliaecosystem"
69
+ os : " linux"
70
+ arch : " x86_64"
Original file line number Diff line number Diff line change
1
+ steps :
2
+ - label : " :julia: :linux: ${ARCH?} Julia ${JULIA_VERSION?}"
3
+ plugins :
4
+ - JuliaCI/julia#v1:
5
+ version : " ${JULIA_VERSION?}"
6
+ - staticfloat/sandbox#v1:
7
+ rootfs_url : " ${ROOTFS_URL?}"
8
+ rootfs_treehash : " ${ROOTFS_HASH?}"
9
+ uid : 0
10
+ gid : 0
11
+ workspaces :
12
+ - " /cache:/cache"
13
+ - staticfloat/metahook#sf/windows_backslashes:
14
+ pre-command : |
15
+ # Upgrade our debian package to bullseye (wowza)
16
+ if [[ $$(uname -m) == "x86_64" ]] || [[ $$(uname -m) == "aarch64" ]]; then
17
+ echo "deb http://deb.debian.org/debian bullseye main" > /etc/apt/sources.list.d/bullseye.list
18
+ apt update && apt install -y libblas64-dev liblapack64-dev
19
+ fi
20
+ commands : |
21
+ julia --project=test -e 'import Pkg; Pkg.instantiate()'
22
+ echo "+++ run tests"
23
+ julia --project=test test/runtests.jl
24
+ agents :
25
+ queue : " juliaecosystem"
26
+ os : " linux"
27
+ sandbox.jl : " true"
28
+ arch : " ${AGENT_ARCH?}"
Original file line number Diff line number Diff line change
1
+ steps :
2
+ - label : " :julia: :macos: ${ARCH?} Julia ${JULIA_VERSION?}"
3
+ plugins :
4
+ - JuliaCI/julia#v1:
5
+ version : " ${JULIA_VERSION?}"
6
+ - staticfloat/metahook#sf/windows_backslashes:
7
+ pre-command : |
8
+ echo "This is a test"
9
+ commands : |
10
+ julia --project=test -e 'import Pkg; Pkg.instantiate()'
11
+ echo "+++ run tests"
12
+ julia --project=test test/runtests.jl
13
+ agents :
14
+ queue : " juliaecosystem"
15
+ os : " macos"
16
+ arch : " ${AGENT_ARCH?}"
Original file line number Diff line number Diff line change
1
+ steps :
2
+ - label : " :julia: :windows: ${ARCH?} Julia ${JULIA_VERSION?}"
3
+ plugins :
4
+ - JuliaCI/julia#v1:
5
+ version : " ${JULIA_VERSION?}"
6
+ - staticfloat/metahook#sf/windows_backslashes:
7
+ # Copy our julia installation to a known location that we can mount with docker
8
+ pre-command : |
9
+ cp $(dirname $(dirname $(which julia))) /c/buildkite-agent
10
+ - docker#v3.13.0:
11
+ image : " ${DOCKER_IMAGE?}"
12
+ always-pull : true
13
+ volumes :
14
+ # Abuse the fact that we have a `PATH` mapping for `buildkite-agent`
15
+ # to mount in our build of Julia for use within the container:
16
+ - " C:\\ buildkite-agent\\ bin:C:\\ buildkite-agent\\ bin"
17
+ commands : |
18
+ julia --project=test -e 'import Pkg; Pkg.instantiate()'
19
+ echo "+++ run tests"
20
+ julia --project=test test/runtests.jl
21
+ agents :
22
+ queue : " juliaecosystem"
23
+ os : " windows"
24
+ arch : " ${AGENT_ARCH?}"
You can’t perform that action at this time.
0 commit comments