From ee4fba530059faa72488644b4958d2704ce8075b Mon Sep 17 00:00:00 2001 From: Huijing Hei Date: Thu, 4 Aug 2022 14:59:01 +0800 Subject: [PATCH 1/8] el9: Re-enable /tmp on tmpfs See: https://gitlab.com/redhat/centos-stream/rpms/systemd/-/blob/c9s/0004-Avoid-tmp-being-mounted-as-tmpfs-without-the-user-s-.patch See: https://gitlab.com/redhat/centos-stream/rpms/systemd/-/commit/9efbb443aa9f8de751926cd903f9c56806d85972#b9c1ef0bb10dd8f850e36759e92628f539183e73 --- common-el9.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/common-el9.yaml b/common-el9.yaml index 90b0c3b1d..db0823e87 100644 --- a/common-el9.yaml +++ b/common-el9.yaml @@ -27,6 +27,13 @@ postprocess: runtime_path="/usr/bin/crun" EOF + # Enable tmp-on-tmpfs by default because we don't want to have things leak + # across reboots, it increases alignment with FCOS, and also fixes the + # Live ISO. First, verify that RHEL is still disabling. + grep -q '# RHEL-only: Disable /tmp on tmpfs' /usr/lib/systemd/system/basic.target + echo '# RHCOS-only: we follow the Fedora/upstream default' >> /usr/lib/systemd/system/basic.target + echo 'Wants=tmp.mount' >> /usr/lib/systemd/system/basic.target + # Packages that are only for SCOS & RHCOS 9 packages: - openvswitch2.17 From 66c59037bebac1e8fb704543df25464f09e0ed0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 10:57:37 +0200 Subject: [PATCH 2/8] el9: Remove dbus-broker workaround --- common-el9.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/common-el9.yaml b/common-el9.yaml index db0823e87..b78aea665 100644 --- a/common-el9.yaml +++ b/common-el9.yaml @@ -6,9 +6,6 @@ postprocess: #!/usr/bin/env bash set -xeo pipefail - # FIXME: Force enable dbus-broker to get the dbus.service → dbus-broker.service - systemctl enable dbus-broker - # FIXME: Why is this only broken here? NM isn't removing the link? sed -i '/etc.resolv/d' /usr/lib/tmpfiles.d/etc.conf From 929ac48d327cdf414ea0bfa603e252174be8a0d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 13:32:57 +0200 Subject: [PATCH 3/8] c9s: Disable iscsid.socket --- manifest-c9s.yaml | 4 ++++ .../usr/lib/systemd/system-preset/36-scos-disabled.preset | 1 + 2 files changed, 5 insertions(+) create mode 100644 overlay.d/07c9s/usr/lib/systemd/system-preset/36-scos-disabled.preset diff --git a/manifest-c9s.yaml b/manifest-c9s.yaml index 778ce5cad..082080b39 100644 --- a/manifest-c9s.yaml +++ b/manifest-c9s.yaml @@ -17,6 +17,10 @@ include: # Starting from here, everything should be specific to SCOS +# SCOS specific overlays +ostree-layers: + - overlay/07c9s + # CentOS Stream 9 repos + internal repos for now repos: - baseos diff --git a/overlay.d/07c9s/usr/lib/systemd/system-preset/36-scos-disabled.preset b/overlay.d/07c9s/usr/lib/systemd/system-preset/36-scos-disabled.preset new file mode 100644 index 000000000..ccdaa8db3 --- /dev/null +++ b/overlay.d/07c9s/usr/lib/systemd/system-preset/36-scos-disabled.preset @@ -0,0 +1 @@ +disable iscsid.socket From ebaeae8fc09c3b60f523f35e4cdc8724618f8403 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 12:59:31 +0200 Subject: [PATCH 4/8] tests: Use new toolbox test --- tests/kola/toolbox | 1 + tests/kola/version/toolbox | 18 ------------------ 2 files changed, 1 insertion(+), 18 deletions(-) create mode 120000 tests/kola/toolbox delete mode 100755 tests/kola/version/toolbox diff --git a/tests/kola/toolbox b/tests/kola/toolbox new file mode 120000 index 000000000..cdf36e17d --- /dev/null +++ b/tests/kola/toolbox @@ -0,0 +1 @@ +../../fedora-coreos-config/tests/kola/toolbox \ No newline at end of file diff --git a/tests/kola/version/toolbox b/tests/kola/version/toolbox deleted file mode 100755 index 2f068dce4..000000000 --- a/tests/kola/version/toolbox +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -# This is RHCOS only, we ship a different version of toolbox in FCOS - -# kola: { "exclusive": false } -set -xeuo pipefail - -fatal() { - echo "$@" >&2 - exit 1 -} - -# make it a var so we can change when/if we switch to containers/toolbox -url="https://github.com/coreos/toolbox" - -if [ "$(rpm -q --qf '%{URL}' toolbox)" != "${url}" ]; then - fatal "Error: toolbox is not a shell script as expected" -fi From 1902813d326e095329bdcc2e43f5c6b38d9bab21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 12:20:17 +0200 Subject: [PATCH 5/8] denylist: Use versioned kola denylists --- ci/prow-entrypoint.sh | 1 + kola-denylist-c9s.yaml | 37 ++++++++++++++++++++++++++++++++++++ kola-denylist-rhel-8.6.yaml | 37 ++++++++++++++++++++++++++++++++++++ kola-denylist-rhel-9.0.yaml | 37 ++++++++++++++++++++++++++++++++++++ kola-denylist.yaml | 38 +------------------------------------ 5 files changed, 113 insertions(+), 37 deletions(-) create mode 100644 kola-denylist-c9s.yaml create mode 100644 kola-denylist-rhel-8.6.yaml create mode 100644 kola-denylist-rhel-9.0.yaml mode change 100644 => 120000 kola-denylist.yaml diff --git a/ci/prow-entrypoint.sh b/ci/prow-entrypoint.sh index a075ef619..1db8f72f5 100755 --- a/ci/prow-entrypoint.sh +++ b/ci/prow-entrypoint.sh @@ -59,6 +59,7 @@ setup_variant() { ln -snf "manifest-${variant}.yaml" "src/config/manifest.yaml" ln -snf "extensions-${variant}.yaml" "src/config/extensions.yaml" ln -snf "image-${variant}.yaml" "src/config/image.yaml" + ln -snf "kola-denylist-${variant}.yaml" "src/config/kola-denylist.yaml" } # Do a cosa build & cosa build-extensions only. diff --git a/kola-denylist-c9s.yaml b/kola-denylist-c9s.yaml new file mode 100644 index 000000000..e91c6ab25 --- /dev/null +++ b/kola-denylist-c9s.yaml @@ -0,0 +1,37 @@ +# This file documents currently known-to-fail kola tests. It is consumed by +# coreos-assembler to automatically skip some tests. For more information, +# see: https://github.com/coreos/coreos-assembler/pull/866. +- pattern: fips.enable* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1782026 + arches: + - s390x +- pattern: coreos.ignition.journald-log + tracker: https://github.com/coreos/coreos-assembler/issues/1173 +- pattern: coreos.ignition.mount.* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1899990 + arches: + - s390x +- pattern: ext.config.shared.ignition.stable-boot + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=2075085 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror.luks + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: ext.config.shared.files.file-directory-permissions + tracker: https://github.com/coreos/fedora-coreos-tracker/issues/1243 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/fedora-coreos-config/issues/1500 + arches: + - s390x diff --git a/kola-denylist-rhel-8.6.yaml b/kola-denylist-rhel-8.6.yaml new file mode 100644 index 000000000..e91c6ab25 --- /dev/null +++ b/kola-denylist-rhel-8.6.yaml @@ -0,0 +1,37 @@ +# This file documents currently known-to-fail kola tests. It is consumed by +# coreos-assembler to automatically skip some tests. For more information, +# see: https://github.com/coreos/coreos-assembler/pull/866. +- pattern: fips.enable* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1782026 + arches: + - s390x +- pattern: coreos.ignition.journald-log + tracker: https://github.com/coreos/coreos-assembler/issues/1173 +- pattern: coreos.ignition.mount.* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1899990 + arches: + - s390x +- pattern: ext.config.shared.ignition.stable-boot + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=2075085 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror.luks + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: ext.config.shared.files.file-directory-permissions + tracker: https://github.com/coreos/fedora-coreos-tracker/issues/1243 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/fedora-coreos-config/issues/1500 + arches: + - s390x diff --git a/kola-denylist-rhel-9.0.yaml b/kola-denylist-rhel-9.0.yaml new file mode 100644 index 000000000..e91c6ab25 --- /dev/null +++ b/kola-denylist-rhel-9.0.yaml @@ -0,0 +1,37 @@ +# This file documents currently known-to-fail kola tests. It is consumed by +# coreos-assembler to automatically skip some tests. For more information, +# see: https://github.com/coreos/coreos-assembler/pull/866. +- pattern: fips.enable* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1782026 + arches: + - s390x +- pattern: coreos.ignition.journald-log + tracker: https://github.com/coreos/coreos-assembler/issues/1173 +- pattern: coreos.ignition.mount.* + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1899990 + arches: + - s390x +- pattern: ext.config.shared.ignition.stable-boot + tracker: https://bugzilla.redhat.com/show_bug.cgi?id=2075085 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror.luks + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: coreos.boot-mirror + tracker: https://github.com/coreos/coreos-assembler/issues/2725 + arches: + - ppc64le +- pattern: ext.config.shared.files.file-directory-permissions + tracker: https://github.com/coreos/fedora-coreos-tracker/issues/1243 + arches: + - s390x +- pattern: ext.config.shared.kdump.crash + tracker: https://github.com/coreos/fedora-coreos-config/issues/1500 + arches: + - s390x diff --git a/kola-denylist.yaml b/kola-denylist.yaml deleted file mode 100644 index e91c6ab25..000000000 --- a/kola-denylist.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# This file documents currently known-to-fail kola tests. It is consumed by -# coreos-assembler to automatically skip some tests. For more information, -# see: https://github.com/coreos/coreos-assembler/pull/866. -- pattern: fips.enable* - tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1782026 - arches: - - s390x -- pattern: coreos.ignition.journald-log - tracker: https://github.com/coreos/coreos-assembler/issues/1173 -- pattern: coreos.ignition.mount.* - tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1899990 - arches: - - s390x -- pattern: ext.config.shared.ignition.stable-boot - tracker: https://bugzilla.redhat.com/show_bug.cgi?id=2075085 - arches: - - s390x -- pattern: ext.config.shared.kdump.crash - tracker: https://github.com/coreos/coreos-assembler/issues/2725 - arches: - - ppc64le -- pattern: coreos.boot-mirror.luks - tracker: https://github.com/coreos/coreos-assembler/issues/2725 - arches: - - ppc64le -- pattern: coreos.boot-mirror - tracker: https://github.com/coreos/coreos-assembler/issues/2725 - arches: - - ppc64le -- pattern: ext.config.shared.files.file-directory-permissions - tracker: https://github.com/coreos/fedora-coreos-tracker/issues/1243 - arches: - - s390x -- pattern: ext.config.shared.kdump.crash - tracker: https://github.com/coreos/fedora-coreos-config/issues/1500 - arches: - - s390x diff --git a/kola-denylist.yaml b/kola-denylist.yaml new file mode 120000 index 000000000..65df9810c --- /dev/null +++ b/kola-denylist.yaml @@ -0,0 +1 @@ +kola-denylist-rhel-8.6.yaml \ No newline at end of file From 4d81c9dd3f587379df46f528e39fdcf23fb3b51d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 13:33:10 +0200 Subject: [PATCH 6/8] scos: Skip (currently) broken kola tests --- kola-denylist-c9s.yaml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/kola-denylist-c9s.yaml b/kola-denylist-c9s.yaml index e91c6ab25..09bb7bdd4 100644 --- a/kola-denylist-c9s.yaml +++ b/kola-denylist-c9s.yaml @@ -35,3 +35,18 @@ tracker: https://github.com/coreos/fedora-coreos-config/issues/1500 arches: - s390x + +# Broken tests under investigation +- pattern: coreos.boot-mirror +- pattern: ext.config.shared.chrony.dhcp-propagation +- pattern: ext.config.shared.files.dracut-executable + tracker: https://github.com/openshift/os/issues/942 +- pattern: ext.config.shared.networking.default-network-behavior-change +- pattern: ext.config.shared.networking.force-persist-ip +- pattern: ext.config.shared.networking.mtu-on-bond-kargs +- pattern: ext.config.shared.networking.prefer-ignition-networking +- pattern: ext.config.shared.podman.dns +- pattern: ext.config.version.rhel-major-version +- pattern: ext.config.version.rhel-matches-rhcos-build +- pattern: rhcos.network.bond-with-dhcp +- pattern: rhcos.network.bond-with-restart From 8e026aad1fa3e1436488d6b73a72d5f1bb07d1ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 10:53:27 +0200 Subject: [PATCH 7/8] ci: Remove disabled test and add instructions Fixes: https://github.com/openshift/os/pull/937 --- ci/prow-entrypoint.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ci/prow-entrypoint.sh b/ci/prow-entrypoint.sh index 1db8f72f5..c5c469659 100755 --- a/ci/prow-entrypoint.sh +++ b/ci/prow-entrypoint.sh @@ -291,11 +291,12 @@ main () { kola_test_metal_light # kola_test_metal ;; - "explicitely-disabled-test") - echo "Disabled tests" - exit 0 - ;; *) + # This case ensures that we exhaustively list the tests that should + # pass for a PR. To add a new test in openshift/os: + # 1. Add a new test case here that does nothing and get it merged + # 2. Add a new test job in openshift/release that calls this test + # 3. Update your test here and debug it with the CI in the PR echo "Unknown test name" exit 1 ;; From 8bafa5270959fcd64678cb10373b68de0ecb15cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Fri, 5 Aug 2022 16:07:47 +0200 Subject: [PATCH 8/8] ci: Enable more kola tests for SCOS --- ci/prow-entrypoint.sh | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/ci/prow-entrypoint.sh b/ci/prow-entrypoint.sh index c5c469659..6726272a8 100755 --- a/ci/prow-entrypoint.sh +++ b/ci/prow-entrypoint.sh @@ -149,10 +149,6 @@ kola_test_metal() { } # Temporary to get EL9 in CI -kola_test_qemu_light() { - cosa buildextend-qemu - cosa kola --basic-qemu-scenarios -} kola_test_metal_light() { cosa buildextend-metal cosa buildextend-metal4k @@ -277,9 +273,7 @@ main () { # Temporary. Will be removed once variant support is in COSA setup_variant "c9s" cosa_build - # Temporary light tests only until all tests pass - kola_test_qemu_light - # kola_test_qemu + kola_test_qemu ;; "scos-9-build-test-metal" ) setup_user @@ -287,9 +281,8 @@ main () { # Temporary. Will be removed once variant support is in COSA setup_variant "c9s" cosa_build - # Temporary light tests only until all tests pass + # Temporary to get SCOS in CI kola_test_metal_light - # kola_test_metal ;; *) # This case ensures that we exhaustively list the tests that should