Skip to content

Commit 697d306

Browse files
ci: add RHEL 9.9 and RHEL 10.3 support to bootc test cases
Extend the rhel-9.8/rhel-10.2 case blocks to also cover RHEL 9.9 and RHEL 10.3, following the same Copr-primary / compose-RPM-override pattern, using ${ARCH} instead of a hardcoded x86_64. Assisted-by: Claude (claude-sonnet-5) Signed-off-by: Mario Cattamo <mcattamo@redhat.com>
1 parent 355c297 commit 697d306

7 files changed

Lines changed: 164 additions & 8 deletions

File tree

.github/workflows/greenboot-ci.yaml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,29 @@ jobs:
223223
timeout: 120
224224
secrets: "QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};STAGE_REDHAT_IO_USERNAME=${{ secrets.STAGE_REDHAT_IO_USERNAME }};STAGE_REDHAT_IO_TOKEN=${{ secrets.STAGE_REDHAT_IO_TOKEN }};DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }}"
225225

226+
rhel-9-9-bootc:
227+
needs: check-pull-request
228+
if: ${{ needs.check-pull-request.outputs.allowed_user == 'true' }}
229+
continue-on-error: true
230+
runs-on: ubuntu-latest
231+
232+
steps:
233+
- name: Run the tests
234+
uses: sclorg/testing-farm-as-github-action@v3.1.2
235+
with:
236+
compose: RHEL-9.9.0-Nightly
237+
api_key: ${{ secrets.TF_API_KEY }}
238+
git_url: ${{ needs.check-pull-request.outputs.repo_url }}
239+
git_ref: ${{ needs.check-pull-request.outputs.ref }}
240+
update_pull_request_status: true
241+
pull_request_status_name: rhel-9.9-bootc
242+
tmt_context: "arch=x86_64;distro=rhel-9-9"
243+
tmt_plan_regex: bootc
244+
tf_scope: private
245+
variables: "ARCH=x86_64"
246+
timeout: 90
247+
secrets: "QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};STAGE_REDHAT_IO_USERNAME=${{ secrets.STAGE_REDHAT_IO_USERNAME }};STAGE_REDHAT_IO_TOKEN=${{ secrets.STAGE_REDHAT_IO_TOKEN }};DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }}"
248+
226249
rhel-10-2-bootc:
227250
needs: check-pull-request
228251
if: ${{ needs.check-pull-request.outputs.allowed_user == 'true' }}
@@ -245,3 +268,26 @@ jobs:
245268
variables: "ARCH=x86_64;PR_NUMBER=${{ needs.check-pull-request.outputs.pr_number }}"
246269
timeout: 120
247270
secrets: "QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};STAGE_REDHAT_IO_USERNAME=${{ secrets.STAGE_REDHAT_IO_USERNAME }};STAGE_REDHAT_IO_TOKEN=${{ secrets.STAGE_REDHAT_IO_TOKEN }};DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }}"
271+
272+
rhel-10-3-bootc:
273+
needs: check-pull-request
274+
if: ${{ needs.check-pull-request.outputs.allowed_user == 'true' }}
275+
continue-on-error: true
276+
runs-on: ubuntu-latest
277+
278+
steps:
279+
- name: Run the tests
280+
uses: sclorg/testing-farm-as-github-action@v3.1.2
281+
with:
282+
compose: RHEL-10.3-Nightly
283+
api_key: ${{ secrets.TF_API_KEY }}
284+
git_url: ${{ needs.check-pull-request.outputs.repo_url }}
285+
git_ref: ${{ needs.check-pull-request.outputs.ref }}
286+
update_pull_request_status: true
287+
pull_request_status_name: rhel-10.3-bootc
288+
tmt_context: "arch=x86_64;distro=rhel-10-3"
289+
tmt_plan_regex: bootc
290+
tf_scope: private
291+
variables: "ARCH=x86_64"
292+
timeout: 90
293+
secrets: "QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};STAGE_REDHAT_IO_USERNAME=${{ secrets.STAGE_REDHAT_IO_USERNAME }};STAGE_REDHAT_IO_TOKEN=${{ secrets.STAGE_REDHAT_IO_TOKEN }};DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }}"

tests/files/rhel-10-2.repo

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[RHEL-10.2-NIGHTLY-BaseOS]
22
name=baseos
3-
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.2/compose/BaseOS/x86_64/os
3+
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.2/compose/BaseOS/REPLACE_ARCH_HERE/os
44
enabled=1
55
gpgcheck=0
66
[RHEL-10.2-NIGHTLY-AppStream]
77
name=appstream
8-
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.2/compose/AppStream/x86_64/os/
8+
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.2/compose/AppStream/REPLACE_ARCH_HERE/os/
99
enabled=1
1010
gpgcheck=0

tests/files/rhel-10-3.repo

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
[RHEL-10.3-NIGHTLY-BaseOS]
2+
name=baseos
3+
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.3/compose/BaseOS/REPLACE_ARCH_HERE/os
4+
enabled=1
5+
gpgcheck=0
6+
[RHEL-10.3-NIGHTLY-AppStream]
7+
name=appstream
8+
baseurl=http://REPLACE_ME_HERE/rhel-10/nightly/RHEL-10/latest-RHEL-10.3/compose/AppStream/REPLACE_ARCH_HERE/os/
9+
enabled=1
10+
gpgcheck=0

tests/files/rhel-9-8.repo

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[RHEL-9.8-NIGHTLY-BaseOS]
22
name=baseos
3-
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.8.0/compose/BaseOS/x86_64/os/
3+
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.8.0/compose/BaseOS/REPLACE_ARCH_HERE/os/
44
enabled=1
55
gpgcheck=0
66
[RHEL-9.8-NIGHTLY-AppStream]
77
name=appstream
8-
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.8.0/compose/AppStream/x86_64/os/
8+
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.8.0/compose/AppStream/REPLACE_ARCH_HERE/os/
99
enabled=1
1010
gpgcheck=0

tests/files/rhel-9-9.repo

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
[RHEL-9.9-NIGHTLY-BaseOS]
2+
name=baseos
3+
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.9.0/compose/BaseOS/REPLACE_ARCH_HERE/os/
4+
enabled=1
5+
gpgcheck=0
6+
[RHEL-9.9-NIGHTLY-AppStream]
7+
name=appstream
8+
baseurl=http://REPLACE_ME_HERE/rhel-9/nightly/RHEL-9/latest-RHEL-9.9.0/compose/AppStream/REPLACE_ARCH_HERE/os/
9+
enabled=1
10+
gpgcheck=0

tests/greenboot-bootc-anaconda-iso.sh

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ if [[ -n "${TARGET_DISTRO:-}" ]]; then
2727
fi
2828

2929
# Setup variables
30+
ARCH=$(uname -m)
3031
TEST_UUID=anaconda-$((1 + RANDOM % 1000000))
3132
TEMPDIR=$(mktemp -d)
3233
GUEST_ADDRESS=192.168.100.50
@@ -74,21 +75,53 @@ case "${ID}-${VERSION_ID}" in
7475
BIB_URL="registry.stage.redhat.io/rhel9/bootc-image-builder:9.8"
7576
BOOT_ARGS="uefi"
7677
COPR_CHROOT="centos-stream-9-${ARCH}"
78+
{ set +x; } 2>/dev/null
7779
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-8.repo
80+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-8.repo
81+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
82+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
83+
fi
84+
set -x
85+
;;
86+
"rhel-9.9")
87+
OS_VARIANT="rhel9-unknown"
88+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel9/rhel-bootc:9.9"
89+
BIB_URL="registry.stage.redhat.io/rhel9/bootc-image-builder:9.9"
90+
BOOT_ARGS="uefi"
91+
{ set +x; } 2>/dev/null
92+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-9.repo
93+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-9.repo
7894
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
79-
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/x86_64/os/Packages/"
95+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
8096
fi
97+
set -x
8198
;;
8299
"rhel-10.2")
83100
OS_VARIANT="rhel10-unknown"
84101
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.2"
85102
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.2"
86103
BOOT_ARGS="uefi"
87104
COPR_CHROOT="centos-stream-10-${ARCH}"
105+
{ set +x; } 2>/dev/null
88106
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-2.repo
107+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-2.repo
89108
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
90-
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/x86_64/os/Packages/"
109+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
91110
fi
111+
set -x
112+
;;
113+
"rhel-10.3")
114+
OS_VARIANT="rhel10-unknown"
115+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.3"
116+
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.3"
117+
BOOT_ARGS="uefi"
118+
{ set +x; } 2>/dev/null
119+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-3.repo
120+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-3.repo
121+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
122+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
123+
fi
124+
set -x
92125
;;
93126
*)
94127
echo "unsupported distro: ${ID}-${VERSION_ID}"
@@ -256,12 +289,24 @@ COPY files/rhel-9-8.repo /etc/yum.repos.d/rhel-9-8.repo
256289
EOF
257290
fi
258291

292+
if [[ "${ID}-${VERSION_ID}" == "rhel-9.9" ]]; then
293+
tee -a Containerfile >> /dev/null << EOF
294+
COPY files/rhel-9-9.repo /etc/yum.repos.d/rhel-9-9.repo
295+
EOF
296+
fi
297+
259298
if [[ "${ID}-${VERSION_ID}" == "rhel-10.2" ]]; then
260299
tee -a Containerfile >> /dev/null << EOF
261300
COPY files/rhel-10-2.repo /etc/yum.repos.d/rhel-10-2.repo
262301
EOF
263302
fi
264303

304+
if [[ "${ID}-${VERSION_ID}" == "rhel-10.3" ]]; then
305+
tee -a Containerfile >> /dev/null << EOF
306+
COPY files/rhel-10-3.repo /etc/yum.repos.d/rhel-10-3.repo
307+
EOF
308+
fi
309+
265310
tee -a Containerfile >> /dev/null << EOF
266311
RUN (dnf install -y 'dnf5-command(copr)' || dnf install -y 'dnf-command(copr)') && \
267312
dnf copr enable -y packit/fedora-iot-greenboot-rs-${PR_NUMBER} ${COPR_CHROOT} && \

tests/greenboot-bootc-qcow2.sh

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ if [[ -n "${TARGET_DISTRO:-}" ]]; then
2727
fi
2828

2929
# Setup variables
30+
ARCH=$(uname -m)
3031
TEST_UUID=qcow2-$((1 + RANDOM % 1000000))
3132
TEMPDIR=$(mktemp -d)
3233
GUEST_ADDRESS=192.168.100.50
@@ -74,21 +75,53 @@ case "${ID}-${VERSION_ID}" in
7475
BIB_URL="registry.stage.redhat.io/rhel9/bootc-image-builder:9.8"
7576
BOOT_ARGS="uefi"
7677
COPR_CHROOT="centos-stream-9-${ARCH}"
78+
{ set +x; } 2>/dev/null
7779
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-8.repo
80+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-8.repo
81+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
82+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
83+
fi
84+
set -x
85+
;;
86+
"rhel-9.9")
87+
OS_VARIANT="rhel9-unknown"
88+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel9/rhel-bootc:9.9"
89+
BIB_URL="registry.stage.redhat.io/rhel9/bootc-image-builder:9.9"
90+
BOOT_ARGS="uefi"
91+
{ set +x; } 2>/dev/null
92+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-9.repo
93+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-9.repo
7894
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
79-
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/x86_64/os/Packages/"
95+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
8096
fi
97+
set -x
8198
;;
8299
"rhel-10.2")
83100
OS_VARIANT="rhel10-unknown"
84101
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.2"
85102
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.2"
86103
BOOT_ARGS="uefi"
87104
COPR_CHROOT="centos-stream-10-${ARCH}"
105+
{ set +x; } 2>/dev/null
88106
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-2.repo
107+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-2.repo
89108
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
90-
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/x86_64/os/Packages/"
109+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
91110
fi
111+
set -x
112+
;;
113+
"rhel-10.3")
114+
OS_VARIANT="rhel10-unknown"
115+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.3"
116+
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.3"
117+
BOOT_ARGS="uefi"
118+
{ set +x; } 2>/dev/null
119+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-3.repo
120+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-3.repo
121+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
122+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
123+
fi
124+
set -x
92125
;;
93126
*)
94127
echo "unsupported distro: ${ID}-${VERSION_ID}"
@@ -256,12 +289,24 @@ COPY files/rhel-9-8.repo /etc/yum.repos.d/rhel-9-8.repo
256289
EOF
257290
fi
258291

292+
if [[ "${ID}-${VERSION_ID}" == "rhel-9.9" ]]; then
293+
tee -a Containerfile >> /dev/null << EOF
294+
COPY files/rhel-9-9.repo /etc/yum.repos.d/rhel-9-9.repo
295+
EOF
296+
fi
297+
259298
if [[ "${ID}-${VERSION_ID}" == "rhel-10.2" ]]; then
260299
tee -a Containerfile >> /dev/null << EOF
261300
COPY files/rhel-10-2.repo /etc/yum.repos.d/rhel-10-2.repo
262301
EOF
263302
fi
264303

304+
if [[ "${ID}-${VERSION_ID}" == "rhel-10.3" ]]; then
305+
tee -a Containerfile >> /dev/null << EOF
306+
COPY files/rhel-10-3.repo /etc/yum.repos.d/rhel-10-3.repo
307+
EOF
308+
fi
309+
265310
tee -a Containerfile >> /dev/null << EOF
266311
RUN (dnf install -y 'dnf5-command(copr)' || dnf install -y 'dnf-command(copr)') && \
267312
dnf copr enable -y packit/fedora-iot-greenboot-rs-${PR_NUMBER} ${COPR_CHROOT} && \

0 commit comments

Comments
 (0)