From 908f3b9a309bcbaf892b8fc0f36bcae120d7651d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Tue, 30 Apr 2024 15:36:19 +0200 Subject: [PATCH] manifests: Add initial c10s based variant See: https://github.com/openshift/os/issues/1466 --- c10s.repo | 63 ++++++++++++++++++ common-el9.yaml | 6 ++ common.yaml | 4 -- extensions-c10s.yaml | 85 ++++++++++++++++++++++++ image-c10s.yaml | 1 + manifest-c10s.yaml | 142 +++++++++++++++++++++++++++++++++++++++++ manifest-c9s.yaml | 1 + manifest-rhel-9.2.yaml | 1 + manifest-rhel-9.4.yaml | 1 + 9 files changed, 300 insertions(+), 4 deletions(-) create mode 100644 c10s.repo create mode 100644 common-el9.yaml create mode 100644 extensions-c10s.yaml create mode 120000 image-c10s.yaml create mode 100644 manifest-c10s.yaml diff --git a/c10s.repo b/c10s.repo new file mode 100644 index 00000000..58ee3f0f --- /dev/null +++ b/c10s.repo @@ -0,0 +1,63 @@ +[baseos10] +name=CentOS Stream 10 - BaseOS +baseurl=https://composes.stream.centos.org/stream-10/production/latest-CentOS-Stream/compose/BaseOS/$basearch/os +gpgcheck=1 +repo_gpgcheck=0 +enabled=1 +gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-Official + +[appstream10] +name=CentOS Stream 10 - AppStream +baseurl=https://composes.stream.centos.org/stream-10/production/latest-CentOS-Stream/compose/AppStream/$basearch/os +gpgcheck=1 +repo_gpgcheck=0 +enabled=1 +gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-Official + +# [extras-common] +# name=CentOS Stream 10 - Extras packages +# baseurl=https://mirror.stream.centos.org/SIGs/10-stream/extras/$basearch/extras-common +# gpgcheck=1 +# repo_gpgcheck=0 +# enabled=1 +# gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-SIG-Extras-SHA512 + +[nfv10] +name=CentOS Stream 10 - NFV +baseurl=https://composes.stream.centos.org/stream-10/production/latest-CentOS-Stream/compose/NFV/$basearch/os +gpgcheck=1 +repo_gpgcheck=0 +enabled=1 +gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-Official + +[rt10] +name=CentOS Stream 10 - RT +baseurl=https://composes.stream.centos.org/stream-10/production/latest-CentOS-Stream/compose/RT/$basearch/os +gpgcheck=1 +repo_gpgcheck=0 +enabled=1 +gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-Official + +# [sig-nfv10] +# name=CentOS Stream 10 - SIG NFV +# baseurl=https://mirror.stream.centos.org/SIGs/10-stream/nfv/$basearch/openvswitch-2/ +# gpgcheck=1 +# repo_gpgcheck=0 +# enabled=1 +# gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-SIG-NFV + +# [sig-virtualization] +# name=CentOS Stream 10 - SIG Virtualization +# baseurl=https://mirror.stream.centos.org/SIGs/10-stream/virt/$basearch/kata-containers/ +# gpgcheck=1 +# repo_gpgcheck=0 +# enabled=1 +# gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-SIG-Virtualization + +# [sig-cloud-okd] +# name=CentOS Stream 10 - SIG Cloud OKD 4.15 +# baseurl=https://mirror.stream.centos.org/SIGs/10-stream/cloud/$basearch/okd-4.15/ +# gpgcheck=1 +# repo_gpgcheck=0 +# enabled=1 +# gpgkey=file:///usr/share/distribution-gpg-keys/centos/RPM-GPG-KEY-CentOS-SIG-Cloud diff --git a/common-el9.yaml b/common-el9.yaml new file mode 100644 index 00000000..b1c538e5 --- /dev/null +++ b/common-el9.yaml @@ -0,0 +1,6 @@ +# Packages only common to EL 9 (RHEL 9 & C9S) +packages: + - containernetworking-plugins + # Gluster - Used for Openshift e2e gluster testcases + # Reverts https://gitlab.cee.redhat.com/coreos/redhat-coreos/merge_requests/367 and add it for all arches + - glusterfs-fuse diff --git a/common.yaml b/common.yaml index 2af9c503..d412f997 100644 --- a/common.yaml +++ b/common.yaml @@ -201,7 +201,6 @@ packages: # Bootloader updater - bootupd # Containers - - containernetworking-plugins - container-selinux # Needed for newer rpm-ostree - "'skopeo >= 2:1.7.0'" @@ -232,9 +231,6 @@ packages: - qemu-guest-agent # passwd was obsoleted by shadow-utils in F40+, but still needed here - passwd - # Gluster - Used for Openshift e2e gluster testcases - # Reverts https://gitlab.cee.redhat.com/coreos/redhat-coreos/merge_requests/367 and add it for all arches - - glusterfs-fuse # Needed for kernel-devel extension: https://bugzilla.redhat.com/show_bug.cgi?id=1885408 # x86_64 and s390x have these packages installed as dependencies of other packages, ppc64le does not # FIXME: once the below BZs have been resolved to remove perl dependencies, this can be done in the extensions script diff --git a/extensions-c10s.yaml b/extensions-c10s.yaml new file mode 100644 index 00000000..94548fa9 --- /dev/null +++ b/extensions-c10s.yaml @@ -0,0 +1,85 @@ +# RPMs as operating system extensions, distinct from the base ostree commit/image +# https://github.com/openshift/enhancements/blob/master/enhancements/rhcos/extensions.md +# and https://github.com/coreos/fedora-coreos-tracker/issues/401 + +# repos: +# - sig-virtualization + +extensions: + # https://issues.redhat.com/browse/RFE-4177 + # wasm: + # architectures: + # - x86_64 + # - aarch64 + # repos: + # - appstream + # packages: + # - crun-wasm + # https://github.com/coreos/fedora-coreos-tracker/issues/1504 + ipsec: + packages: + - libreswan + - NetworkManager-libreswan + # https://github.com/coreos/fedora-coreos-tracker/issues/326 + usbguard: + packages: + - usbguard + kerberos: + packages: + - krb5-workstation + - libkadm5 + # https://github.com/kmods-via-containers/kmods-via-containers/issues/3 + # https://gitlab.cee.redhat.com/coreos/redhat-coreos/merge_requests/866 + # These are currently overlaid onto the host so that they can be bind-mounted + # into build containers... in the future they should be a `development` + # extension: https://github.com/openshift/machine-config-operator/pull/2143. + kernel-devel: + packages: + - kernel-devel + - kernel-headers + match-base-evr: kernel + # These are already in the base, so they're not OS extensions, but they're + # useful to have in RPM form to install in kmod build containers. + kernel: + kind: development + packages: + - kernel + - kernel-core + - kernel-modules + - kernel-modules-extra + match-base-evr: kernel + # GRPA-2822 + # https://github.com/openshift/machine-config-operator/pull/1330 + # https://github.com/openshift/enhancements/blob/master/enhancements/support-for-realtime-kernel.md + kernel-rt: + architectures: + - x86_64 + repos: + - nfv10 + packages: + - kernel-rt-core + - kernel-rt-kvm + - kernel-rt-modules + - kernel-rt-modules-extra + - kernel-rt-devel + match-base-evr: kernel + # https://github.com/openshift/machine-config-operator/pull/2456 + # https://github.com/openshift/enhancements/blob/master/enhancements/sandboxed-containers/sandboxed-containers-tech-preview.md + # GRPA-3123 + # - kata-containers + # sandboxed-containers: + # architectures: + # - x86_64 + # repos: + # - sig-virtualization10 + # packages: + # - kata-containers + # https://issues.redhat.com/browse/COS-2402 + kernel-64k: + architectures: + - aarch64 + packages: + - kernel-64k-core + - kernel-64k-modules + - kernel-64k-modules-core + - kernel-64k-modules-extra diff --git a/image-c10s.yaml b/image-c10s.yaml new file mode 120000 index 00000000..3abbf78c --- /dev/null +++ b/image-c10s.yaml @@ -0,0 +1 @@ +image-rhel-9.4.yaml \ No newline at end of file diff --git a/manifest-c10s.yaml b/manifest-c10s.yaml new file mode 100644 index 00000000..35a28409 --- /dev/null +++ b/manifest-c10s.yaml @@ -0,0 +1,142 @@ +# Manifest for CentOS Stream CoreOS (SCOS) + +rojig: + license: MIT + name: scos + summary: OKD 4 + +variables: + osversion: "c10s" + +# Include manifests common to all RHEL and CentOS Stream versions and manifest +# common to RHEL 9 & C9S variants +include: + - common.yaml + - packages-openshift.yaml + +# Starting from here, everything should be specific to SCOS + +# CentOS Stream 9 repos + internal repos for now +repos: + - baseos10 + - appstream10 + # For containernetworking-plugins + - rhel-9.4-appstream + # CentOS Extras Common repo for SIG RPM GPG keys + # - extras-common10 + # CentOS NFV SIG repo for openvswitch + # - sig-nfv10 + # For openvswitch + - rhel-9.4-fast-datapath + # CentOS Cloud SIG repo for cri-o, cri-tools and conmon-rs + # - sig-cloud-okd + # Include RHCOS 9 repo for oc, hyperkube + - rhel-9.4-server-ose-4.16 + +# We include hours/minutes to avoid version number reuse +automatic-version-prefix: "416.10." +# This ensures we're semver-compatible which OpenShift wants +automatic-version-suffix: "-" +# Keep this is sync with the version in postprocess +mutate-os-release: "4.16" + +postprocess: + - | + #!/usr/bin/env bash + set -xeo pipefail + + # Tweak /usr/lib/os-release + grep -v "OSTREE_VERSION" /etc/os-release > /usr/lib/os-release.stream + OCP_RELEASE="4.16" + ( + . /etc/os-release + cat > /usr/lib/os-release < /usr/lib/system-release-cpe < /usr/lib/system-release < /usr/lib/issue < /etc/motd <