Skip to content

Commit 0546935

Browse files
committed
Add 15 RHEL releases to CI
Same dance as fedora, add a new script krun-fedora.sh. Since it's all pretty much the same, I'll consider merging it into krun-distro.sh in the future, especially when we add suse. It all depends how adding debian and ubuntu look, so keep it separate from now. While here, use https on fedora mirrors.
1 parent c9982a0 commit 0546935

File tree

4 files changed

+239
-25
lines changed

4 files changed

+239
-25
lines changed

.buildkite/pipeline.yml

+181-16
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ steps:
4040

4141
- label: "quark-test on fedora 28 (no bpf)"
4242
key: test_fedora_28
43-
command: "./.buildkite/runtest_fedora.sh 28 -k"
43+
command: "./.buildkite/runtest_distro.sh fedora 28 -k"
4444
depends_on:
4545
- make_docker
4646
agents:
@@ -51,7 +51,7 @@ steps:
5151

5252
- label: "quark-test on fedora 29 (no bpf)"
5353
key: test_fedora_29
54-
command: "./.buildkite/runtest_fedora.sh 29 -k"
54+
command: "./.buildkite/runtest_distro.sh fedora 29 -k"
5555
depends_on:
5656
- make_docker
5757
agents:
@@ -62,7 +62,7 @@ steps:
6262

6363
- label: "quark-test on fedora 30 (no bpf)"
6464
key: test_fedora_30
65-
command: "./.buildkite/runtest_fedora.sh 30 -k"
65+
command: "./.buildkite/runtest_distro.sh fedora 30 -k"
6666
depends_on:
6767
- make_docker
6868
agents:
@@ -73,7 +73,7 @@ steps:
7373

7474
- label: "quark-test on fedora 31 (no bpf)"
7575
key: test_fedora_31
76-
command: "./.buildkite/runtest_fedora.sh 31 -k"
76+
command: "./.buildkite/runtest_distro.sh fedora 31 -k"
7777
depends_on:
7878
- make_docker
7979
agents:
@@ -84,7 +84,7 @@ steps:
8484

8585
- label: "quark-test on fedora 32"
8686
key: test_fedora_32
87-
command: "./.buildkite/runtest_fedora.sh 32"
87+
command: "./.buildkite/runtest_distro.sh fedora 32"
8888
depends_on:
8989
- make_docker
9090
agents:
@@ -95,7 +95,7 @@ steps:
9595

9696
- label: "quark-test on fedora 33"
9797
key: test_fedora_33
98-
command: "./.buildkite/runtest_fedora.sh 33"
98+
command: "./.buildkite/runtest_distro.sh fedora 33"
9999
depends_on:
100100
- make_docker
101101
agents:
@@ -106,7 +106,7 @@ steps:
106106

107107
- label: "quark-test on fedora 34"
108108
key: test_fedora_34
109-
command: "./.buildkite/runtest_fedora.sh 34"
109+
command: "./.buildkite/runtest_distro.sh fedora 34"
110110
depends_on:
111111
- make_docker
112112
agents:
@@ -117,7 +117,7 @@ steps:
117117

118118
- label: "quark-test on fedora 35"
119119
key: test_fedora_35
120-
command: "./.buildkite/runtest_fedora.sh 35"
120+
command: "./.buildkite/runtest_distro.sh fedora 35"
121121
depends_on:
122122
- make_docker
123123
agents:
@@ -128,7 +128,7 @@ steps:
128128

129129
- label: "quark-test on fedora 36"
130130
key: test_fedora_36
131-
command: "./.buildkite/runtest_fedora.sh 36"
131+
command: "./.buildkite/runtest_distro.sh fedora 36"
132132
depends_on:
133133
- make_docker
134134
agents:
@@ -139,7 +139,7 @@ steps:
139139

140140
- label: "quark-test on fedora 37"
141141
key: test_fedora_37
142-
command: "./.buildkite/runtest_fedora.sh 37"
142+
command: "./.buildkite/runtest_distro.sh fedora 37"
143143
depends_on:
144144
- make_docker
145145
agents:
@@ -150,7 +150,7 @@ steps:
150150

151151
- label: "quark-test on fedora 38"
152152
key: test_fedora_38
153-
command: "./.buildkite/runtest_fedora.sh 38"
153+
command: "./.buildkite/runtest_distro.sh fedora 38"
154154
depends_on:
155155
- make_docker
156156
agents:
@@ -161,7 +161,7 @@ steps:
161161

162162
- label: "quark-test on fedora 39"
163163
key: test_fedora_39
164-
command: "./.buildkite/runtest_fedora.sh 39"
164+
command: "./.buildkite/runtest_distro.sh fedora 39"
165165
depends_on:
166166
- make_docker
167167
agents:
@@ -172,7 +172,7 @@ steps:
172172

173173
- label: "quark-test on fedora 40"
174174
key: test_fedora_40
175-
command: "./.buildkite/runtest_fedora.sh 40"
175+
command: "./.buildkite/runtest_distro.sh fedora 40"
176176
depends_on:
177177
- make_docker
178178
agents:
@@ -183,7 +183,7 @@ steps:
183183

184184
- label: "quark-test on fedora 41"
185185
key: test_fedora_41
186-
command: "./.buildkite/runtest_fedora.sh 41"
186+
command: "./.buildkite/runtest_distro.sh fedora 41"
187187
depends_on:
188188
- make_docker
189189
agents:
@@ -192,9 +192,174 @@ steps:
192192
machineType: n2-standard-2
193193
enableNestedVirtualization: true
194194

195-
- label: "quark-test on fedora 42(beta)"
195+
- label: "quark-test on fedora 42 (beta)"
196196
key: test_fedora_42
197-
command: "./.buildkite/runtest_fedora.sh 42"
197+
command: "./.buildkite/runtest_distro.sh fedora 42"
198+
depends_on:
199+
- make_docker
200+
agents:
201+
image: family/core-ubuntu-2204
202+
provider: gcp
203+
machineType: n2-standard-2
204+
enableNestedVirtualization: true
205+
206+
- label: "quark-test on rhel 8"
207+
key: test_rhel_8
208+
command: "./.buildkite/runtest_distro.sh rhel 8"
209+
depends_on:
210+
- make_docker
211+
agents:
212+
image: family/core-ubuntu-2204
213+
provider: gcp
214+
machineType: n2-standard-2
215+
enableNestedVirtualization: true
216+
217+
- label: "quark-test on rhel 8.3 (no bpf)"
218+
key: test_rhel_8_3
219+
command: "./.buildkite/runtest_distro.sh rhel 8.3 -k"
220+
depends_on:
221+
- make_docker
222+
agents:
223+
image: family/core-ubuntu-2204
224+
provider: gcp
225+
machineType: n2-standard-2
226+
enableNestedVirtualization: true
227+
228+
- label: "quark-test on rhel 8.4 (no bpf)"
229+
key: test_rhel_8_4
230+
command: "./.buildkite/runtest_distro.sh rhel 8.4 -k"
231+
depends_on:
232+
- make_docker
233+
agents:
234+
image: family/core-ubuntu-2204
235+
provider: gcp
236+
machineType: n2-standard-2
237+
enableNestedVirtualization: true
238+
239+
- label: "quark-test on rhel 8.5"
240+
key: test_rhel_8_5
241+
command: "./.buildkite/runtest_distro.sh rhel 8.5"
242+
depends_on:
243+
- make_docker
244+
agents:
245+
image: family/core-ubuntu-2204
246+
provider: gcp
247+
machineType: n2-standard-2
248+
enableNestedVirtualization: true
249+
250+
- label: "quark-test on rhel 8.6"
251+
key: test_rhel_8_6
252+
command: "./.buildkite/runtest_distro.sh rhel 8.6"
253+
depends_on:
254+
- make_docker
255+
agents:
256+
image: family/core-ubuntu-2204
257+
provider: gcp
258+
machineType: n2-standard-2
259+
enableNestedVirtualization: true
260+
261+
- label: "quark-test on rhel 8.7"
262+
key: test_rhel_8_7
263+
command: "./.buildkite/runtest_distro.sh rhel 8.7"
264+
depends_on:
265+
- make_docker
266+
agents:
267+
image: family/core-ubuntu-2204
268+
provider: gcp
269+
machineType: n2-standard-2
270+
enableNestedVirtualization: true
271+
272+
- label: "quark-test on rhel 8.8"
273+
key: test_rhel_8_8
274+
command: "./.buildkite/runtest_distro.sh rhel 8.8"
275+
depends_on:
276+
- make_docker
277+
agents:
278+
image: family/core-ubuntu-2204
279+
provider: gcp
280+
machineType: n2-standard-2
281+
enableNestedVirtualization: true
282+
283+
- label: "quark-test on rhel 8.9"
284+
key: test_rhel_8_9
285+
command: "./.buildkite/runtest_distro.sh rhel 8.9"
286+
depends_on:
287+
- make_docker
288+
agents:
289+
image: family/core-ubuntu-2204
290+
provider: gcp
291+
machineType: n2-standard-2
292+
enableNestedVirtualization: true
293+
294+
- label: "quark-test on rhel 9"
295+
key: test_rhel_9
296+
command: "./.buildkite/runtest_distro.sh rhel 9"
297+
depends_on:
298+
- make_docker
299+
agents:
300+
image: family/core-ubuntu-2204
301+
provider: gcp
302+
machineType: n2-standard-2
303+
enableNestedVirtualization: true
304+
305+
- label: "quark-test on rhel 9.0"
306+
key: test_rhel_9_0
307+
command: "./.buildkite/runtest_distro.sh rhel 9.0"
308+
depends_on:
309+
- make_docker
310+
agents:
311+
image: family/core-ubuntu-2204
312+
provider: gcp
313+
machineType: n2-standard-2
314+
enableNestedVirtualization: true
315+
316+
- label: "quark-test on rhel 9.1"
317+
key: test_rhel_9_1
318+
command: "./.buildkite/runtest_distro.sh rhel 9.1"
319+
depends_on:
320+
- make_docker
321+
agents:
322+
image: family/core-ubuntu-2204
323+
provider: gcp
324+
machineType: n2-standard-2
325+
enableNestedVirtualization: true
326+
327+
- label: "quark-test on rhel 9.2"
328+
key: test_rhel_9_2
329+
command: "./.buildkite/runtest_distro.sh rhel 9.2"
330+
depends_on:
331+
- make_docker
332+
agents:
333+
image: family/core-ubuntu-2204
334+
provider: gcp
335+
machineType: n2-standard-2
336+
enableNestedVirtualization: true
337+
338+
- label: "quark-test on rhel 9.3"
339+
key: test_rhel_9_3
340+
command: "./.buildkite/runtest_distro.sh rhel 9.3"
341+
depends_on:
342+
- make_docker
343+
agents:
344+
image: family/core-ubuntu-2204
345+
provider: gcp
346+
machineType: n2-standard-2
347+
enableNestedVirtualization: true
348+
349+
- label: "quark-test on rhel 9.4"
350+
key: test_rhel_9_4
351+
command: "./.buildkite/runtest_distro.sh rhel 9.4"
352+
depends_on:
353+
- make_docker
354+
agents:
355+
image: family/core-ubuntu-2204
356+
provider: gcp
357+
machineType: n2-standard-2
358+
enableNestedVirtualization: true
359+
360+
- label: "quark-test on rhel 9.5"
361+
key: test_rhel_9_5
362+
command: "./.buildkite/runtest_distro.sh rhel 9.5"
198363
depends_on:
199364
- make_docker
200365
agents:

.buildkite/runtest_fedora.sh renamed to .buildkite/runtest_distro.sh

+8-6
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22

33
set -euo pipefail
44

5-
FEDORAVER="$1"
6-
shift
5+
DISTRO="$1"
6+
DISTROVER="$2"
7+
shift 2
78

89
function download {
910
buildkite-agent artifact download "$1" "$2"
@@ -32,7 +33,8 @@ sudo apt-get -qq install -y --no-install-recommends \
3233
# Make sure we can run things on KVM
3334
sudo kvm-ok
3435

35-
# Run Forrest Run
36-
sudo ./krun-fedora.sh initramfs.gz $FEDORAVER quark-test $@
37-
38-
exit $?
36+
case "$DISTRO" in
37+
fedora) sudo ./krun-fedora.sh initramfs.gz "$DISTROVER" quark-test $@;;
38+
rhel) sudo ./krun-rhel.sh initramfs.gz "$DISTROVER" quark-test $@;;
39+
*) echo bad distribution "$DISTROVER" 1>&2;;
40+
esac

krun-fedora.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ shift 2
2020

2121
case $FEDORAVER in
2222
2?|3?) URL="https://archives.fedoraproject.org/pub/archive/fedora/linux/updates/$FEDORAVER/Everything/x86_64/Packages/k";;
23-
42|rawhide) URL="http://ftp.fau.de/fedora/linux/development/$FEDORAVER/Everything/x86_64/os/Packages/k";;
24-
4?) URL="http://ftp.fau.de/fedora/linux/updates/$FEDORAVER/Everything/x86_64/Packages/k";;
25-
*) echo bad version "$FEDORAVER" 1>&2
23+
42|rawhide) URL="https://ftp.fau.de/fedora/linux/development/$FEDORAVER/Everything/x86_64/os/Packages/k";;
24+
4?) URL="https://ftp.fau.de/fedora/linux/updates/$FEDORAVER/Everything/x86_64/Packages/k";;
25+
*) echo bad version "$FEDORAVER" 1>&2;;
2626
esac
2727

2828
TMPDIR=$(mktemp -d "/tmp/$SCRIPT.XXXXXXXXXX")

krun-rhel.sh

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/bin/bash
2+
3+
set -euo pipefail
4+
5+
SCRIPT=${0##*/}
6+
7+
function usage
8+
{
9+
echo "usage: $SCRIPT initramfs.gz RHELVER command" 1>&2
10+
exit 1
11+
}
12+
13+
if [ $# -lt 3 ]; then
14+
usage
15+
fi
16+
17+
INITRAMFS="$1"
18+
RHELVER="$2"
19+
shift 2
20+
21+
case $RHELVER in
22+
8|9) URL="https://ftp.fau.de/rockylinux/$RHELVER/BaseOS/x86_64/os/Packages/k";;
23+
8.[34]) URL="https://dl.rockylinux.org/vault/rocky/$RHELVER/BaseOS/x86_64/os/Packages";;
24+
8.?|9.?) URL="https://dl.rockylinux.org/vault/rocky/$RHELVER/BaseOS/x86_64/os/Packages/k";;
25+
*) echo bad version "$RHELVER" 1>&2;;
26+
esac
27+
28+
TMPDIR=$(mktemp -d "/tmp/$SCRIPT.XXXXXXXXXX")
29+
trap 'rm -rf "$TMPDIR"' EXIT
30+
31+
RPMURL=$(lynx -dump -listonly "$URL"|grep kernel-core)
32+
RPMURL=${RPMURL##* }
33+
RPM=$(basename "$RPMURL")
34+
VMLINUZ=${RPM##kernel-core-}
35+
VMLINUZ=${VMLINUZ%%.rpm}
36+
VMLINUZ=$TMPDIR/lib/modules/$VMLINUZ/vmlinuz
37+
38+
# echo URL $URL
39+
# echo RPMURL $RPMURL
40+
# echo RPM $RPM
41+
# echo VMLINUZ $VMLINUZ
42+
43+
cd "$TMPDIR"
44+
curl -s "$RPMURL" | rpm2cpio - | cpio -idm
45+
cd -
46+
47+
./krun.sh "$INITRAMFS" "$VMLINUZ" "$@"

0 commit comments

Comments
 (0)