From 9025123771029d25974c7dca86301815678a19da Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Mon, 25 May 2026 15:02:57 +0200 Subject: [PATCH 1/3] ci: fix error handling in passkey TMT plan SSH commands MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If COPR_ENABLE_CMD fails, the script will now fail immediately instead of proceeding to dnf upgrade with packages from default repositories, ensuring tests run against the correct SSSD version. Signed-off-by: Iker Pedrosa Reviewed-by: Jakub Vávra Reviewed-by: Justin Stephenson (cherry picked from commit 334449b9df7386052d1a09bcf01597b0ebb21ebc) --- plans/passkey.fmf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plans/passkey.fmf b/plans/passkey.fmf index 4625b8c4ed..61f44f38c9 100644 --- a/plans/passkey.fmf +++ b/plans/passkey.fmf @@ -154,7 +154,7 @@ prepare: ssh -i /tmp/sssd-ci-containers/data/ssh-keys/root.id_rsa \ -o StrictHostKeyChecking=no \ root@client.test " - $COPR_ENABLE_CMD + $COPR_ENABLE_CMD && \ dnf upgrade -y --refresh sssd* " @@ -162,7 +162,7 @@ prepare: ssh -i /tmp/sssd-ci-containers/data/ssh-keys/root.id_rsa \ -o StrictHostKeyChecking=no \ root@master.ipa.test " - $COPR_ENABLE_CMD + $COPR_ENABLE_CMD && \ dnf upgrade -y --refresh sssd* " From fd03c08050428a4ecc2dddc2a33dbef86ef9b9b0 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Wed, 27 May 2026 10:02:53 +0200 Subject: [PATCH 2/3] ci: use hardware.memory syntax for TMT passkey tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update passkey.fmf to use the `hardware.memory` specification. Changed from fixed 16GB to ">= 16 GB" requirement as per Testing Farm documentation at https://docs.testing-farm.io/Testing%20Farm/0.1/test-request.html#ram Signed-off-by: Iker Pedrosa Reviewed-by: Jakub Vávra Reviewed-by: Justin Stephenson (cherry picked from commit 167b5a9c9aa596af29bbdd964be839e0d17b0301) --- plans/passkey.fmf | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/plans/passkey.fmf b/plans/passkey.fmf index 61f44f38c9..a17b0f0f04 100644 --- a/plans/passkey.fmf +++ b/plans/passkey.fmf @@ -6,10 +6,8 @@ tag: passkey provision: how: virtual - # Testing Farm provides a maximum of 4GB RAM, - # but 16GB allows smoother operation by avoiding memory swap - # when running locally or if memory limits increase - memory: 16384 + hardware: + memory: ">= 16 GB" prepare: - name: Install general dependencies From 4197421f2656d0377e79a56dcf672985e8b4e966 Mon Sep 17 00:00:00 2001 From: Iker Pedrosa Date: Thu, 28 May 2026 10:09:54 +0200 Subject: [PATCH 3/3] ci: update passkey TMT plan for native CentOS Stream 10 execution MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With 16GB RAM allocation, CentOS Stream 10 tests can now run directly on matching VM and containers. Thus, update the plan to take this into account and detect the distribution accordingly. Signed-off-by: Iker Pedrosa Reviewed-by: Jakub Vávra Reviewed-by: Justin Stephenson (cherry picked from commit 943ecbb369820a01fba2372995eaf7473aab0505) --- .packit.yaml | 10 ++-------- plans/passkey.fmf | 27 +++++++++++++++++++-------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.packit.yaml b/.packit.yaml index afaf522e50..fd777765f6 100644 --- a/.packit.yaml +++ b/.packit.yaml @@ -45,19 +45,13 @@ jobs: - fedora-all - centos-stream-10 - # Use fedora-latest as host for centos-10 tests due to memory constraints - # that cause swapping issues with centos-10 containers on centos hosts + # Run TMT tests after COPR builds complete - job: tests trigger: pull_request - identifier: "centos-stream-10" packages: - upstream targets: - - fedora-latest - tf_extra_params: - environments: - - variables: - CONTAINER_TARGET: "centos-10" + - centos-stream-10 # Create Fedora pull request on release - job: propose_downstream diff --git a/plans/passkey.fmf b/plans/passkey.fmf index a17b0f0f04..615ac04e57 100644 --- a/plans/passkey.fmf +++ b/plans/passkey.fmf @@ -10,6 +10,13 @@ provision: memory: ">= 16 GB" prepare: + - name: Enable EPEL repository for CentOS Stream + how: shell + script: | + if grep -q "CentOS Stream" /etc/os-release 2>/dev/null; then + dnf install -y epel-release + fi + - name: Install general dependencies how: install package: @@ -31,11 +38,13 @@ prepare: ln -sf $(command -v podman-compose) /usr/local/bin/docker-compose fi - - name: Install and load kernel module for passkey testing + - name: Install and load kernel module for passkey testing on Fedora how: shell script: | - dnf install -y kernel-modules-extra-$(uname -r) - modprobe vhci_hcd + if grep -q "^ID=fedora" /etc/os-release 2>/dev/null; then + dnf install -y kernel-modules-extra-$(uname -r) + modprobe vhci_hcd + fi - name: Clone sssd how: shell @@ -76,11 +85,11 @@ prepare: setsebool container_manage_cgroup true cp env.example .env - # Use CONTAINER_TARGET from packit if provided, otherwise use Fedora - if [ -n "$CONTAINER_TARGET" ]; then - CONTAINER_TAG="$CONTAINER_TARGET" + # Detect system distribution and set appropriate container tag + . /tmp/sssd/contrib/ci/distro.sh + if [ "$DISTRO_ID" = "centos" ]; then + CONTAINER_TAG="centos-$DISTRO_RELEASE" else - . /tmp/sssd/contrib/ci/distro.sh CONTAINER_TAG="fedora-$DISTRO_RELEASE" fi echo "Using container tag: $CONTAINER_TAG" @@ -142,7 +151,9 @@ prepare: echo "Using COPR repo: $COPR_REPO" - if [[ "$CONTAINER_TARGET" == "centos-10" ]]; then + # Detect system distribution and set appropriate COPR command + . /tmp/sssd/contrib/ci/distro.sh + if [ "$DISTRO_ID" = "centos" ] && [ "$DISTRO_RELEASE" = "10" ]; then COPR_ENABLE_CMD="dnf copr enable -y $COPR_REPO centos-stream-10-x86_64" else COPR_ENABLE_CMD="dnf copr enable -y $COPR_REPO"