diff --git a/.packit.yml b/.packit.yml index 174aacf7..1939f6f2 100644 --- a/.packit.yml +++ b/.packit.yml @@ -50,6 +50,20 @@ _: fmf_url: https://gitlab.com/redhat/centos-stream/tests/kernel/test-plans.git fmf_ref: main + common-rhel-64k-test-config: &common-rhel-64k-test-config + job: tests + branch: master + identifier: "integration-rhel-64k" + use_internal_tf: true + targets: + rhel+epel-10-aarch64: + distros: [RHEL-10.3-Nightly] + skip_build: true + manual_trigger: false + tmt_plan: kpatch-integration-rhel/kernel-64k + fmf_url: https://gitlab.com/redhat/centos-stream/tests/kernel/test-plans.git + fmf_ref: main + jobs: - <<: *common-upstream-kernel-test-config trigger: pull_request @@ -70,3 +84,12 @@ jobs: trigger: commit labels: - integration-commit + + - <<: *common-rhel-64k-test-config + trigger: pull_request + labels: + - integration-pr + - <<: *common-rhel-64k-test-config + trigger: commit + labels: + - integration-commit diff --git a/kpatch-build/kpatch-build b/kpatch-build/kpatch-build index 67871a7b..9062399b 100755 --- a/kpatch-build/kpatch-build +++ b/kpatch-build/kpatch-build @@ -999,6 +999,11 @@ if [[ "$ARCHVERSION" =~ - ]]; then KREL="${KREL%.*}" fi +VARIANT="" +if [[ "$ARCHVERSION" =~ \+(.*)$ ]]; then + VARIANT="-${BASH_REMATCH[1]//_/-}" +fi + [[ "$ARCHVERSION" =~ .el7a. ]] && ALT="-alt" [[ -z "$TARGETS" ]] && TARGETS="vmlinux modules" @@ -1114,7 +1119,7 @@ else elif [[ "$DISTRO" = photon ]]; then [[ -z "$CONFIGFILE" ]] && CONFIGFILE="$KERNEL_SRCDIR"/.config else - [[ -z "$CONFIGFILE" ]] && CONFIGFILE="$KERNEL_SRCDIR/configs/kernel$ALT-$KVER-$ARCH.config" + [[ -z "$CONFIGFILE" ]] && CONFIGFILE="$KERNEL_SRCDIR/configs/kernel$ALT-$KVER-$ARCH$VARIANT.config" fi if [[ ! "$DISTRO" = photon ]]; then (cd "$KERNEL_SRCDIR" && make mrproper 2>&1 | logger) || die diff --git a/test/integration/lib.sh b/test/integration/lib.sh index 2331fe62..092ff6b4 100644 --- a/test/integration/lib.sh +++ b/test/integration/lib.sh @@ -42,10 +42,16 @@ kpatch_rhel_dependencies() local arch local rhel_major local yum_utils_version + local variant="" kernel_version=$(uname -r) arch=$(uname -m) rhel_major=${VERSION_ID%%.*} + # Detect kernel (e.g., +64k , +rt_64k) + if [[ "$kernel_version" =~ \+(.*)$ ]]; then + variant="-${BASH_REMATCH[1]//_/-}" + fi + # kpatch-build dependencies sudo yum install -y \ elfutils \ @@ -53,19 +59,19 @@ kpatch_rhel_dependencies() gcc \ gcc-c++ \ git \ - "kernel-devel-${kernel_version%.*}" \ + "kernel${variant}-devel-${kernel_version%.*}" \ rpm-build \ wget \ yum-utils - sudo debuginfo-install -y "kernel-${kernel_version%.*}" + sudo debuginfo-install -y "kernel${variant}-${kernel_version%.*}" [[ "$arch" == "ppc64le" ]] && sudo yum install -y gcc-plugin-devel # kernel dependencies yum_utils_version=$(rpm -q --queryformat="%{version}" yum-utils) if [[ "${yum_utils_version}" = "$(echo -e "${yum_utils_version}\\n4.0.12" | sort -rV | head -n1)" ]]; then - sudo yum-builddep -y --skip-unavailable "kernel-${kernel_version%.*}" + sudo yum-builddep -y --skip-unavailable "kernel${variant}-${kernel_version%.*}" else - sudo yum-builddep -y "kernel-${kernel_version%.*}" + sudo yum-builddep -y "kernel${variant}-${kernel_version%.*}" fi [[ "$arch" == "x86_64" ]] && sudo yum install -y pesign