Skip to content

Commit fe1b13d

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 8939b10 commit fe1b13d

7 files changed

Lines changed: 168 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+
runs-on: ubuntu-latest
230+
permissions:
231+
statuses: write
232+
233+
steps:
234+
- name: Run the tests
235+
uses: sclorg/testing-farm-as-github-action@230555baceb860aa468d216f1822974836b965d1 # v4.3.1
236+
with:
237+
compose: RHEL-9.9.0-Nightly
238+
api_key: ${{ secrets.TF_API_KEY }}
239+
git_url: ${{ needs.check-pull-request.outputs.repo_url }}
240+
git_ref: ${{ needs.check-pull-request.outputs.ref }}
241+
update_pull_request_status: true
242+
pull_request_status_name: rhel-9.9-bootc
243+
tmt_context: "arch=x86_64;distro=rhel-9-9"
244+
tmt_plan_regex: bootc
245+
variables: "ARCH=x86_64;PR_NUMBER=${{ needs.check-pull-request.outputs.pr_number }}"
246+
timeout: 120
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+
runs-on: ubuntu-latest
276+
permissions:
277+
statuses: write
278+
279+
steps:
280+
- name: Run the tests
281+
uses: sclorg/testing-farm-as-github-action@230555baceb860aa468d216f1822974836b965d1 # v4.3.1
282+
with:
283+
compose: RHEL-10.3-Nightly
284+
api_key: ${{ secrets.TF_API_KEY }}
285+
git_url: ${{ needs.check-pull-request.outputs.repo_url }}
286+
git_ref: ${{ needs.check-pull-request.outputs.ref }}
287+
update_pull_request_status: true
288+
pull_request_status_name: rhel-10.3-bootc
289+
tmt_context: "arch=x86_64;distro=rhel-10-3"
290+
tmt_plan_regex: bootc
291+
variables: "ARCH=x86_64;PR_NUMBER=${{ needs.check-pull-request.outputs.pr_number }}"
292+
timeout: 120
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: 49 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,55 @@ 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
7881
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/"
82+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
8083
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+
COPR_CHROOT="centos-stream-9-${ARCH}"
92+
{ set +x; } 2>/dev/null
93+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-9.repo
94+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-9.repo
95+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
96+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
97+
fi
98+
set -x
8199
;;
82100
"rhel-10.2")
83101
OS_VARIANT="rhel10-unknown"
84102
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.2"
85103
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.2"
86104
BOOT_ARGS="uefi"
87105
COPR_CHROOT="centos-stream-10-${ARCH}"
106+
{ set +x; } 2>/dev/null
88107
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-2.repo
108+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-2.repo
89109
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/"
110+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
91111
fi
112+
set -x
113+
;;
114+
"rhel-10.3")
115+
OS_VARIANT="rhel10-unknown"
116+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.3"
117+
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.3"
118+
BOOT_ARGS="uefi"
119+
COPR_CHROOT="centos-stream-10-${ARCH}"
120+
{ set +x; } 2>/dev/null
121+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-3.repo
122+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-3.repo
123+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
124+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
125+
fi
126+
set -x
92127
;;
93128
*)
94129
echo "unsupported distro: ${ID}-${VERSION_ID}"
@@ -256,12 +291,24 @@ COPY files/rhel-9-8.repo /etc/yum.repos.d/rhel-9-8.repo
256291
EOF
257292
fi
258293

294+
if [[ "${ID}-${VERSION_ID}" == "rhel-9.9" ]]; then
295+
tee -a Containerfile > /dev/null << EOF
296+
COPY files/rhel-9-9.repo /etc/yum.repos.d/rhel-9-9.repo
297+
EOF
298+
fi
299+
259300
if [[ "${ID}-${VERSION_ID}" == "rhel-10.2" ]]; then
260301
tee -a Containerfile > /dev/null << EOF
261302
COPY files/rhel-10-2.repo /etc/yum.repos.d/rhel-10-2.repo
262303
EOF
263304
fi
264305

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

tests/greenboot-bootc-qcow2.sh

Lines changed: 49 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,55 @@ 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
7881
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/"
82+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
8083
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+
COPR_CHROOT="centos-stream-9-${ARCH}"
92+
{ set +x; } 2>/dev/null
93+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-9-9.repo
94+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-9-9.repo
95+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
96+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-9/composes/RHEL-9/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
97+
fi
98+
set -x
8199
;;
82100
"rhel-10.2")
83101
OS_VARIANT="rhel10-unknown"
84102
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.2"
85103
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.2"
86104
BOOT_ARGS="uefi"
87105
COPR_CHROOT="centos-stream-10-${ARCH}"
106+
{ set +x; } 2>/dev/null
88107
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-2.repo
108+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-2.repo
89109
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/"
110+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
91111
fi
112+
set -x
113+
;;
114+
"rhel-10.3")
115+
OS_VARIANT="rhel10-unknown"
116+
BASE_IMAGE_URL="registry.stage.redhat.io/rhel10/rhel-bootc:10.3"
117+
BIB_URL="registry.stage.redhat.io/rhel10/bootc-image-builder:10.3"
118+
BOOT_ARGS="uefi"
119+
COPR_CHROOT="centos-stream-10-${ARCH}"
120+
{ set +x; } 2>/dev/null
121+
sed -i "s/REPLACE_ME_HERE/${DOWNLOAD_NODE}/g" files/rhel-10-3.repo
122+
sed -i "s/REPLACE_ARCH_HERE/${ARCH}/g" files/rhel-10-3.repo
123+
if [[ "${USE_COMPOSE_RPMS}" == true ]]; then
124+
GREENBOOT_PACKAGES_URL="https://${DOWNLOAD_NODE}/rhel-10/composes/RHEL-10/${COMPOSE_ID}/compose/AppStream/${ARCH}/os/Packages/"
125+
fi
126+
set -x
92127
;;
93128
*)
94129
echo "unsupported distro: ${ID}-${VERSION_ID}"
@@ -256,12 +291,24 @@ COPY files/rhel-9-8.repo /etc/yum.repos.d/rhel-9-8.repo
256291
EOF
257292
fi
258293

294+
if [[ "${ID}-${VERSION_ID}" == "rhel-9.9" ]]; then
295+
tee -a Containerfile > /dev/null << EOF
296+
COPY files/rhel-9-9.repo /etc/yum.repos.d/rhel-9-9.repo
297+
EOF
298+
fi
299+
259300
if [[ "${ID}-${VERSION_ID}" == "rhel-10.2" ]]; then
260301
tee -a Containerfile > /dev/null << EOF
261302
COPY files/rhel-10-2.repo /etc/yum.repos.d/rhel-10-2.repo
262303
EOF
263304
fi
264305

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

0 commit comments

Comments
 (0)