blob: 561d542dda4937594029ff6b1cb185de9eb1e24d (
plain)
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
#!/bin/bash
set -euf -o pipefail
scripts=$(dirname $0)
# shellcheck source=jenkins-helpers.sh
. $scripts/jenkins-helpers.sh
convert_args_to_variables "$@"
obligatory_variables NODE_NAME password
declare NODE_NAME password
distro="${distro-bionic}"
force="${force-false}"
master="${master-silent}"
verbose="${verbose-true}"
if $verbose; then set -x; fi
if $force; then
keep_existing=false
else
keep_existing=keep_if_same_image
fi
case "$NODE_NAME:$master" in
tcwg-amp-03:silent)
bots=(
linaro-aarch64-full
linaro-aarch64-global-isel
)
;;
tcwg-amp-04:silent)
bots=(
linaro-armv7-selfhost
linaro-armv7-global-isel
)
;;
tcwg-amp-05:normal)
bots=(
linaro-arm-lldb
linaro-aarch64-lldb
)
;;
tcwg-amp-05:buildkite)
bots=(
# 1 bot per AArch64 config to limit the
# total build time to 1x the slowest config
linaro-aarch64-libcxx-01
linaro-aarch64-libcxx-02
)
;;
tcwg-amp-06:buildkite)
bots=(
# These can all build any v7/8 config.
# 4 because there's 4 combinations.
# exceptions/no exceptions armv7/armv8
# 1 bot per config limits total build
# time to 1x the slowest bot.
linaro-armv8-libcxx-01
linaro-armv8-libcxx-02
linaro-armv8-libcxx-03
linaro-armv8-libcxx-04
)
;;
tcwg-jade-01:buildkite)
bots=(
# Load testing libcxx precommit
# Not used in production precommit
linaro-aarch64-libcxx-01-test
linaro-aarch64-libcxx-02-test
linaro-armv8-libcxx-01-test
linaro-armv8-libcxx-02-test
linaro-armv8-libcxx-03-test
linaro-armv8-libcxx-04-test
)
;;
tcwg-jade-01:normal)
bots=(
linaro-aarch64-full
linaro-aarch64-global-isel
linaro-armv7-selfhost
linaro-armv7-global-isel
linaro-aarch64-lld
linaro-aarch64-quick
linaro-aarch64-flang-oot
linaro-aarch64-flang-dylib
linaro-aarch64-flang-sharedlibs
linaro-aarch64-flang-release
linaro-aarch64-flang-rel-assert
linaro-armv8-lld
linaro-armv7-lnt
linaro-armv7-quick
linaro-aarch64-flang-debug
linaro-aarch64-flang-latest-clang
linaro-aarch64-flang-latest-gcc
linaro-aarch64-flang-oot-new-driver
)
;;
tcwg-llvmbot_d05-01:silent)
bots=(
linaro-aarch64-lld
linaro-aarch64-quick
linaro-aarch64-flang-oot
linaro-aarch64-flang-dylib
linaro-aarch64-flang-sharedlibs
linaro-aarch64-flang-release
linaro-aarch64-flang-rel-assert
linaro-armv8-lld
linaro-armv7-lnt
linaro-armv7-quick
linaro-aarch64-flang-debug
linaro-aarch64-flang-latest-clang
linaro-aarch64-flang-latest-gcc
linaro-aarch64-flang-oot-new-driver
)
;;
tcwg-llvmbot_tk1-09:silent)
# Connect linaro-tk1-09 to silent buildmaster to test its stability
bots=("$(echo "$NODE_NAME" | sed -e "s/tcwg-llvmbot_/linaro-/")")
;;
tcwg-llvmbot_tk1-09:normal)
;;
tcwg-llvmbot_tk1-*:normal)
bots=("$(echo "$NODE_NAME" | sed -e "s/tcwg-llvmbot_/linaro-/")")
;;
esac
for bot in "${bots[@]+${bots[@]}}"; do
case "$bot" in
linaro-aarch64-*) arch="arm64" ;;
linaro-arm*|linaro-tk1-*) arch="armhf" ;;
*) echo "ERROR: Unknown bot: $bot"; exit 1 ;;
esac
image="linaro/ci-$arch-tcwg-llvmbot-ubuntu:$distro"
$scripts/tcwg-start-container.sh \
--container "$master-$bot" \
--image "$image" \
--keep_existing "$keep_existing" \
--verbose "$verbose" \
-- \
$image $master $bot $password
done
|