diff --git a/SOURCES/0001-Fix-and-Improve-AlmaLinux-support.patch b/SOURCES/0001-Fix-and-Improve-AlmaLinux-support.patch deleted file mode 100644 index d029989..0000000 --- a/SOURCES/0001-Fix-and-Improve-AlmaLinux-support.patch +++ /dev/null @@ -1,618 +0,0 @@ -diff -aruN cloud-init-22.1/cloudinit/config/cc_ca_certs.py cloud-init-22.1.patched/cloudinit/config/cc_ca_certs.py ---- cloud-init-22.1/cloudinit/config/cc_ca_certs.py 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/cloudinit/config/cc_ca_certs.py 2023-08-04 12:53:10 -@@ -19,6 +19,20 @@ - "ca_cert_update_cmd": ["update-ca-certificates"], - } - DISTRO_OVERRIDES = { -+ "almalinux": { -+ "ca_cert_path": "/usr/share/pki/ca-trust-source/", -+ "ca_cert_filename": "anchors/cloud-init-ca-certs.crt", -+ "ca_cert_config": None, -+ "ca_cert_system_path": "/etc/pki/ca-trust/", -+ "ca_cert_update_cmd": ["update-ca-trust"], -+ }, -+ "cloudlinux": { -+ "ca_cert_path": "/usr/share/pki/ca-trust-source/", -+ "ca_cert_filename": "anchors/cloud-init-ca-certs.crt", -+ "ca_cert_config": None, -+ "ca_cert_system_path": "/etc/pki/ca-trust/", -+ "ca_cert_update_cmd": ["update-ca-trust"], -+ }, - "rhel": { - "ca_cert_path": "/usr/share/pki/ca-trust-source/", - "ca_cert_filename": "anchors/cloud-init-ca-certs.crt", -@@ -43,7 +57,7 @@ - ca-certificates package is installed but not if the - ca-certificates-bundle package is installed. - """ --distros = ["alpine", "debian", "ubuntu", "rhel"] -+distros = ["almalinux", "alpine", "cloudlinux", "debian", "ubuntu", "rhel"] - - meta: MetaSchema = { - "id": "cc_ca_certs", -diff -aruN cloud-init-22.1/cloudinit/config/cc_ntp.py cloud-init-22.1.patched/cloudinit/config/cc_ntp.py ---- cloud-init-22.1/cloudinit/config/cc_ntp.py 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/cloudinit/config/cc_ntp.py 2023-08-04 12:53:57 -@@ -80,6 +80,14 @@ - - # This is Distro-specific configuration overrides of the base config - DISTRO_CLIENT_CONFIG = { -+ "almalinux": { -+ "ntp": { -+ "service_name": "ntpd", -+ }, -+ "chrony": { -+ "service_name": "chronyd", -+ }, -+ }, - "alpine": { - "chrony": { - "confpath": "/etc/chrony/chrony.conf", -@@ -89,6 +97,14 @@ - "confpath": "/etc/ntp.conf", - "packages": [], - "service_name": "ntpd", -+ }, -+ }, -+ "cloudlinux": { -+ "ntp": { -+ "service_name": "ntpd", -+ }, -+ "chrony": { -+ "service_name": "chronyd", - }, - }, - "debian": { -diff -aruN cloud-init-22.1/cloudinit/settings.py cloud-init-22.1.patched/cloudinit/settings.py ---- cloud-init-22.1/cloudinit/settings.py 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/cloudinit/settings.py 2023-08-04 12:46:54 -@@ -58,7 +58,7 @@ - 'cloud_dir': '/var/lib/cloud', - 'templates_dir': '/etc/cloud/templates/', - }, -- 'distro': 'rhel', -+ 'distro': 'almalinux', - 'network': {'renderers': None}, - }, - "vendor_data": {"enabled": True, "prefix": []}, -diff -aruN cloud-init-22.1/cloudinit/sources/DataSourceRbxCloud.py cloud-init-22.1.patched/cloudinit/sources/DataSourceRbxCloud.py ---- cloud-init-22.1/cloudinit/sources/DataSourceRbxCloud.py 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/cloudinit/sources/DataSourceRbxCloud.py 2023-08-04 12:54:44 -@@ -55,7 +55,7 @@ - - def gratuitous_arp(items, distro): - source_param = "-S" -- if distro.name in ["fedora", "centos", "rhel"]: -+ if distro.name in ["almalinux", "fedora", "centos", "cloudlinux", "rhel"]: - source_param = "-s" - for item in items: - try: -diff -aruN cloud-init-22.1/config/cloud.cfg.tmpl cloud-init-22.1.patched/config/cloud.cfg.tmpl ---- cloud-init-22.1/config/cloud.cfg.tmpl 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/config/cloud.cfg.tmpl 2023-08-04 12:56:00 -@@ -2,7 +2,7 @@ - # The top level settings are used as module - # and system configuration. - {% set is_bsd = variant in ["dragonfly", "freebsd", "netbsd", "openbsd"] %} --{% set is_rhel = variant in ["rhel", "centos"] %} -+{% set is_rhel = variant in ["rhel", "centos", "almalinux", "cloudlinux"] %} - {% if is_bsd %} - syslog_fix_perms: root:wheel - {% elif variant in ["suse"] %} -diff -aruN cloud-init-22.1/packages/pkg-deps.json cloud-init-22.1.patched/packages/pkg-deps.json ---- cloud-init-22.1/packages/pkg-deps.json 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/packages/pkg-deps.json 2023-08-04 12:55:20 -@@ -1,4 +1,18 @@ - { -+ "almalinux" : { -+ "build-requires" : [ -+ "python3-devel" -+ ], -+ "requires" : [ -+ "e2fsprogs", -+ "iproute", -+ "net-tools", -+ "procps", -+ "rsyslog", -+ "shadow-utils", -+ "sudo" -+ ] -+ }, - "debian" : { - "build-requires" : [ - "debhelper", -@@ -14,6 +28,20 @@ - ] - }, - "centos" : { -+ "build-requires" : [ -+ "python3-devel" -+ ], -+ "requires" : [ -+ "e2fsprogs", -+ "iproute", -+ "net-tools", -+ "procps", -+ "rsyslog", -+ "shadow-utils", -+ "sudo" -+ ] -+ }, -+ "cloudlinux" : { - "build-requires" : [ - "python3-devel" - ], -diff -aruN cloud-init-22.1/systemd/cloud-config.service.tmpl cloud-init-22.1.patched/systemd/cloud-config.service.tmpl ---- cloud-init-22.1/systemd/cloud-config.service.tmpl 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/systemd/cloud-config.service.tmpl 2023-08-04 12:56:40 -@@ -4,7 +4,7 @@ - After=network-online.target cloud-config.target - After=snapd.seeded.service - Wants=network-online.target cloud-config.target --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} -diff -aruN cloud-init-22.1/systemd/cloud-final.service.tmpl cloud-init-22.1.patched/systemd/cloud-final.service.tmpl ---- cloud-init-22.1/systemd/cloud-final.service.tmpl 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/systemd/cloud-final.service.tmpl 2023-08-04 12:57:11 -@@ -7,7 +7,7 @@ - Before=apt-daily.service - {% endif %} - Wants=network-online.target cloud-config.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} -@@ -19,7 +19,7 @@ - RemainAfterExit=yes - TimeoutSec=0 - KillMode=process --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - # Restart NetworkManager if it is present and running. - ExecStartPost=/bin/sh -c 'u=NetworkManager.service; \ - out=$(systemctl show --property=SubState $u) || exit; \ -diff -aruN cloud-init-22.1/systemd/cloud-init-local.service.tmpl cloud-init-22.1.patched/systemd/cloud-init-local.service.tmpl ---- cloud-init-22.1/systemd/cloud-init-local.service.tmpl 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/systemd/cloud-init-local.service.tmpl 2023-08-04 13:00:54 -@@ -1,23 +1,23 @@ - ## template:jinja - [Unit] - Description=Initial cloud-init job (pre-networking) --{% if variant in ["ubuntu", "unknown", "debian", "rhel" ] %} -+{% if variant in ["almalinux", "cloudlinux", "ubuntu", "unknown", "debian", "rhel" ] %} - DefaultDependencies=no - {% endif %} - Wants=network-pre.target - After=hv_kvp_daemon.service - After=systemd-remount-fs.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - Requires=dbus.socket - After=dbus.socket - {% endif %} - Before=NetworkManager.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - Before=network.service - {% endif %} - Before=network-pre.target - Before=shutdown.target --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - Before=firewalld.target - Conflicts=shutdown.target - {% endif %} -@@ -26,14 +26,14 @@ - Conflicts=shutdown.target - {% endif %} - RequiresMountsFor=/var/lib/cloud --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} - - [Service] - Type=oneshot --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ExecStartPre=/bin/mkdir -p /run/cloud-init - ExecStartPre=/sbin/restorecon /run/cloud-init - ExecStartPre=/usr/bin/touch /run/cloud-init/enabled -diff -aruN cloud-init-22.1/systemd/cloud-init.service.tmpl cloud-init-22.1.patched/systemd/cloud-init.service.tmpl ---- cloud-init-22.1/systemd/cloud-init.service.tmpl 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/systemd/cloud-init.service.tmpl 2023-08-04 13:01:39 -@@ -1,7 +1,7 @@ - ## template:jinja - [Unit] - Description=Initial cloud-init job (metadata service crawler) --{% if variant not in ["photon", "rhel"] %} -+{% if variant not in ["almalinux", "cloudlinux", "photon", "rhel"] %} - DefaultDependencies=no - {% endif %} - Wants=cloud-init-local.service -@@ -37,7 +37,7 @@ - Conflicts=shutdown.target - {% endif %} - Before=systemd-user-sessions.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} -diff -aruN cloud-init-22.1/templates/chrony.conf.almalinux.tmpl cloud-init-22.1.patched/templates/chrony.conf.almalinux.tmpl ---- cloud-init-22.1/templates/chrony.conf.almalinux.tmpl 1970-01-01 02:00:00 -+++ cloud-init-22.1.patched/templates/chrony.conf.almalinux.tmpl 2023-08-04 12:46:54 -@@ -0,0 +1,45 @@ -+## template:jinja -+# Use public servers from the pool.ntp.org project. -+# Please consider joining the pool (http://www.pool.ntp.org/join.html). -+{% if pools %}# pools -+{% endif %} -+{% for pool in pools -%} -+pool {{pool}} iburst -+{% endfor %} -+{%- if servers %}# servers -+{% endif %} -+{% for server in servers -%} -+server {{server}} iburst -+{% endfor %} -+ -+# Record the rate at which the system clock gains/losses time. -+driftfile /var/lib/chrony/drift -+ -+# Allow the system clock to be stepped in the first three updates -+# if its offset is larger than 1 second. -+makestep 1.0 3 -+ -+# Enable kernel synchronization of the real-time clock (RTC). -+rtcsync -+ -+# Enable hardware timestamping on all interfaces that support it. -+#hwtimestamp * -+ -+# Increase the minimum number of selectable sources required to adjust -+# the system clock. -+#minsources 2 -+ -+# Allow NTP client access from local network. -+#allow 192.168.0.0/16 -+ -+# Serve time even if not synchronized to a time source. -+#local stratum 10 -+ -+# Specify file containing keys for NTP authentication. -+#keyfile /etc/chrony.keys -+ -+# Specify directory for log files. -+logdir /var/log/chrony -+ -+# Select which information is logged. -+#log measurements statistics tracking -diff -aruN cloud-init-22.1/templates/chrony.conf.cloudlinux.tmpl cloud-init-22.1.patched/templates/chrony.conf.cloudlinux.tmpl ---- cloud-init-22.1/templates/chrony.conf.cloudlinux.tmpl 1970-01-01 02:00:00 -+++ cloud-init-22.1.patched/templates/chrony.conf.cloudlinux.tmpl 2023-08-04 13:02:20 -@@ -0,0 +1,45 @@ -+## template:jinja -+# Use public servers from the pool.ntp.org project. -+# Please consider joining the pool (http://www.pool.ntp.org/join.html). -+{% if pools %}# pools -+{% endif %} -+{% for pool in pools -%} -+pool {{pool}} iburst -+{% endfor %} -+{%- if servers %}# servers -+{% endif %} -+{% for server in servers -%} -+server {{server}} iburst -+{% endfor %} -+ -+# Record the rate at which the system clock gains/losses time. -+driftfile /var/lib/chrony/drift -+ -+# Allow the system clock to be stepped in the first three updates -+# if its offset is larger than 1 second. -+makestep 1.0 3 -+ -+# Enable kernel synchronization of the real-time clock (RTC). -+rtcsync -+ -+# Enable hardware timestamping on all interfaces that support it. -+#hwtimestamp * -+ -+# Increase the minimum number of selectable sources required to adjust -+# the system clock. -+#minsources 2 -+ -+# Allow NTP client access from local network. -+#allow 192.168.0.0/16 -+ -+# Serve time even if not synchronized to a time source. -+#local stratum 10 -+ -+# Specify file containing keys for NTP authentication. -+#keyfile /etc/chrony.keys -+ -+# Specify directory for log files. -+logdir /var/log/chrony -+ -+# Select which information is logged. -+#log measurements statistics tracking -diff -aruN cloud-init-22.1/templates/ntp.conf.almalinux.tmpl cloud-init-22.1.patched/templates/ntp.conf.almalinux.tmpl ---- cloud-init-22.1/templates/ntp.conf.almalinux.tmpl 1970-01-01 02:00:00 -+++ cloud-init-22.1.patched/templates/ntp.conf.almalinux.tmpl 2023-08-04 12:46:54 -@@ -0,0 +1,61 @@ -+## template:jinja -+ -+# For more information about this file, see the man pages -+# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5). -+ -+driftfile /var/lib/ntp/drift -+ -+# Permit time synchronization with our time source, but do not -+# permit the source to query or modify the service on this system. -+restrict default kod nomodify notrap nopeer noquery -+restrict -6 default kod nomodify notrap nopeer noquery -+ -+# Permit all access over the loopback interface. This could -+# be tightened as well, but to do so would effect some of -+# the administrative functions. -+restrict 127.0.0.1 -+restrict -6 ::1 -+ -+# Hosts on local network are less restricted. -+#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap -+ -+# Use public servers from the pool.ntp.org project. -+# Please consider joining the pool (http://www.pool.ntp.org/join.html). -+{% if pools %}# pools -+{% endif %} -+{% for pool in pools -%} -+pool {{pool}} iburst -+{% endfor %} -+{%- if servers %}# servers -+{% endif %} -+{% for server in servers -%} -+server {{server}} iburst -+{% endfor %} -+ -+#broadcast 192.168.1.255 autokey # broadcast server -+#broadcastclient # broadcast client -+#broadcast 224.0.1.1 autokey # multicast server -+#multicastclient 224.0.1.1 # multicast client -+#manycastserver 239.255.254.254 # manycast server -+#manycastclient 239.255.254.254 autokey # manycast client -+ -+# Enable public key cryptography. -+#crypto -+ -+includefile /etc/ntp/crypto/pw -+ -+# Key file containing the keys and key identifiers used when operating -+# with symmetric key cryptography. -+keys /etc/ntp/keys -+ -+# Specify the key identifiers which are trusted. -+#trustedkey 4 8 42 -+ -+# Specify the key identifier to use with the ntpdc utility. -+#requestkey 8 -+ -+# Specify the key identifier to use with the ntpq utility. -+#controlkey 8 -+ -+# Enable writing of statistics records. -+#statistics clockstats cryptostats loopstats peerstats -diff -aruN cloud-init-22.1/templates/ntp.conf.cloudlinux.tmpl cloud-init-22.1.patched/templates/ntp.conf.cloudlinux.tmpl ---- cloud-init-22.1/templates/ntp.conf.cloudlinux.tmpl 1970-01-01 02:00:00 -+++ cloud-init-22.1.patched/templates/ntp.conf.cloudlinux.tmpl 2023-08-04 13:03:08 -@@ -0,0 +1,61 @@ -+## template:jinja -+ -+# For more information about this file, see the man pages -+# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5). -+ -+driftfile /var/lib/ntp/drift -+ -+# Permit time synchronization with our time source, but do not -+# permit the source to query or modify the service on this system. -+restrict default kod nomodify notrap nopeer noquery -+restrict -6 default kod nomodify notrap nopeer noquery -+ -+# Permit all access over the loopback interface. This could -+# be tightened as well, but to do so would effect some of -+# the administrative functions. -+restrict 127.0.0.1 -+restrict -6 ::1 -+ -+# Hosts on local network are less restricted. -+#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap -+ -+# Use public servers from the pool.ntp.org project. -+# Please consider joining the pool (http://www.pool.ntp.org/join.html). -+{% if pools %}# pools -+{% endif %} -+{% for pool in pools -%} -+pool {{pool}} iburst -+{% endfor %} -+{%- if servers %}# servers -+{% endif %} -+{% for server in servers -%} -+server {{server}} iburst -+{% endfor %} -+ -+#broadcast 192.168.1.255 autokey # broadcast server -+#broadcastclient # broadcast client -+#broadcast 224.0.1.1 autokey # multicast server -+#multicastclient 224.0.1.1 # multicast client -+#manycastserver 239.255.254.254 # manycast server -+#manycastclient 239.255.254.254 autokey # manycast client -+ -+# Enable public key cryptography. -+#crypto -+ -+includefile /etc/ntp/crypto/pw -+ -+# Key file containing the keys and key identifiers used when operating -+# with symmetric key cryptography. -+keys /etc/ntp/keys -+ -+# Specify the key identifiers which are trusted. -+#trustedkey 4 8 42 -+ -+# Specify the key identifier to use with the ntpdc utility. -+#requestkey 8 -+ -+# Specify the key identifier to use with the ntpq utility. -+#controlkey 8 -+ -+# Enable writing of statistics records. -+#statistics clockstats cryptostats loopstats peerstats -diff -aruN cloud-init-22.1/tests/unittests/test_net.py cloud-init-22.1.patched/tests/unittests/test_net.py ---- cloud-init-22.1/tests/unittests/test_net.py 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/tests/unittests/test_net.py 2023-08-04 13:04:10 -@@ -6254,8 +6254,10 @@ - def test_sysconfig_available_uses_variant_mapping(self, m_info, m_avail): - m_avail.return_value = True - variants = [ -+ "almalinux", - "suse", - "centos", -+ "cloudlinux", - "eurolinux", - "fedora", - "rhel", -diff -aruN cloud-init-22.1/tests/unittests/test_render_cloudcfg.py cloud-init-22.1.patched/tests/unittests/test_render_cloudcfg.py ---- cloud-init-22.1/tests/unittests/test_render_cloudcfg.py 2023-08-04 12:47:34 -+++ cloud-init-22.1.patched/tests/unittests/test_render_cloudcfg.py 2023-08-04 13:04:48 -@@ -9,9 +9,11 @@ - - # TODO(Look to align with tools.render-cloudcfg or cloudinit.distos.OSFAMILIES) - DISTRO_VARIANTS = [ -+ "almalinux", - "amazon", - "arch", - "centos", -+ "cloudlinux", - "debian", - "eurolinux", - "fedora", -@@ -66,7 +68,9 @@ - system_cfg = util.load_yaml(stream.read()) - - default_user_exceptions = { -+ "almalinux": "almalinux", - "amazon": "ec2-user", -+ "cloudlinux": "cloudlinux", - "debian": "ubuntu", - "rhel": "cloud-user", - "centos": "cloud-user", -diff -aruN cloud-init-22.1/tools/read-dependencies cloud-init-22.1.patched/tools/read-dependencies ---- cloud-init-22.1/tools/read-dependencies 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/tools/read-dependencies 2023-08-04 13:06:19 -@@ -22,7 +22,9 @@ - - # Map the appropriate package dir needed for each distro choice - DISTRO_PKG_TYPE_MAP = { -+ 'almalinux': 'redhat', - 'centos': 'redhat', -+ 'cloudlinux': 'redhat', - 'eurolinux': 'redhat', - 'miraclelinux': 'redhat', - 'rocky': 'redhat', -@@ -68,14 +70,18 @@ - '--auto-agree-with-licenses'] - - DRY_DISTRO_INSTALL_PKG_CMD = { -+ 'almalinux': ['yum', 'install', '--assumeyes'], - 'rocky': ['yum', 'install', '--assumeyes'], - 'centos': ['yum', 'install', '--assumeyes'], -+ 'cloudlinux': ['yum', 'install', '--assumeyes'], - 'eurolinux': ['yum', 'install', '--assumeyes'], - 'miraclelinux': ['yum', 'install', '--assumeyes'], - 'redhat': ['yum', 'install', '--assumeyes'], - } - - DISTRO_INSTALL_PKG_CMD = { -+ 'almalinux': MAYBE_RELIABLE_YUM_INSTALL, -+ 'cloudlinux': MAYBE_RELIABLE_YUM_INSTALL, - 'rocky': MAYBE_RELIABLE_YUM_INSTALL, - 'eurolinux': MAYBE_RELIABLE_YUM_INSTALL, - 'miraclelinux': MAYBE_RELIABLE_YUM_INSTALL, -@@ -90,6 +96,8 @@ - - # List of base system packages required to enable ci automation - CI_SYSTEM_BASE_PKGS = { -+ 'almalinux': ['python3-tox'], -+ 'cloudlinux': ['python3-tox'], - 'common': ['make', 'sudo', 'tar'], - 'eurolinux': ['python3-tox'], - 'miraclelinux': ['python3-tox'], -@@ -285,10 +293,10 @@ - cmd = DRY_DISTRO_INSTALL_PKG_CMD[distro] - install_cmd.extend(cmd) - -- if distro in ['centos', 'redhat', 'rocky', 'eurolinux']: -+ if distro in ['almalinux', 'cloudlinux', 'centos', 'redhat', 'rocky', 'eurolinux']: - # CentOS and Redhat need epel-release to access oauthlib and jsonschema - subprocess.check_call(install_cmd + ['epel-release']) -- if distro in ['suse', 'opensuse', 'redhat', 'rocky', 'centos', 'eurolinux']: -+ if distro in ['almalinux', 'cloudlinux', 'suse', 'opensuse', 'redhat', 'rocky', 'centos', 'eurolinux']: - pkg_list.append('rpm-build') - subprocess.check_call(install_cmd + pkg_list) - -diff -aruN cloud-init-22.1/tools/run-container cloud-init-22.1.patched/tools/run-container ---- cloud-init-22.1/tools/run-container 2022-02-15 21:02:23 -+++ cloud-init-22.1.patched/tools/run-container 2023-08-04 13:07:29 -@@ -102,7 +102,7 @@ - } - local t=${gitdir%/*} - case "$t" in -- */worktrees) -+ */worktrees) - if [ -f "${t%worktrees}/config" ]; then - gitdir="${t%worktrees}" - fi -@@ -191,7 +191,7 @@ - - get_os_info() { - # run inside container, set OS_NAME, OS_VERSION -- # example OS_NAME are centos, debian, opensuse, rockylinux -+ # example OS_NAME are almalinux, centos, cloudlinux, debian, opensuse, rockylinux - [ -n "${OS_NAME:-}" -a -n "${OS_VERSION:-}" ] && return 0 - if [ -f /etc/os-release ]; then - OS_NAME=$(sh -c '. /etc/os-release; echo $ID') -@@ -247,7 +247,7 @@ - install_packages() { - get_os_info || return - case "$OS_NAME" in -- centos|rocky*) yum_install "$@";; -+ almalinux|centos|cloudlinux|rocky*) yum_install "$@";; - opensuse) zypper_install "$@";; - debian|ubuntu) apt_install "$@";; - *) error "Do not know how to install packages on ${OS_NAME}"; -@@ -486,16 +486,16 @@ - - local build_pkg="" build_srcpkg="" pkg_ext="" distflag="" - case "$OS_NAME" in -- centos|rocky) distflag="--distro=redhat";; -+ almalinux|centos|cloudlinux|rocky) distflag="--distro=redhat";; - opensuse) distflag="--distro=suse";; - esac - - case "$OS_NAME" in - debian|ubuntu) -- build_pkg="./packages/bddeb -d" -+ build_pkg="./packages/bddeb -d" - build_srcpkg="./packages/bddeb -S -d" - pkg_ext=".deb";; -- centos|opensuse|rocky) -+ almalinux|centos|cloudlinux|opensuse|rocky) - build_pkg="./packages/brpm $distflag" - build_srcpkg="./packages/brpm $distflag --srpm" - pkg_ext=".rpm";; diff --git a/SOURCES/0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch b/SOURCES/0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch index b0f754f..1b3e71b 100644 --- a/SOURCES/0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch +++ b/SOURCES/0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch @@ -1,7 +1,7 @@ -From a05901c035618d473ae8b2335fc7301a6d577647 Mon Sep 17 00:00:00 2001 -From: Elkhan Mammadli -Date: Sat, 7 Oct 2023 00:47:40 +0400 -Subject: [PATCH 1/1] Improvements for AlmaLinux OS and CloudLinux OS +From f4f100c0dddf1f11b239374a8dc452739b8e6a81 Mon Sep 17 00:00:00 2001 +From: Andrew Lukoshko +Date: Thu, 28 Mar 2024 14:24:08 +0000 +Subject: [PATCH] Improvements for AlmaLinux OS and CloudLinux OS Add AlmaLinux OS and CloudLinux OS support to: @@ -14,37 +14,33 @@ Datasources: - Rbx Cloud Datasource Systemd services: -- cloud-config.service - cloud-final.service - cloud-init-local.service - cloud-init.service - -Signed-off-by: Elkhan Mammadli --- cloudinit/config/cc_ca_certs.py | 8 ++++ cloudinit/config/cc_ntp.py | 11 ++--- cloudinit/config/cc_resolv_conf.py | 2 + cloudinit/settings.py | 2 +- cloudinit/sources/DataSourceRbxCloud.py | 2 +- - systemd/cloud-config.service.tmpl | 2 +- - systemd/cloud-final.service.tmpl | 4 +- - systemd/cloud-init-local.service.tmpl | 12 ++--- - systemd/cloud-init.service.tmpl | 4 +- - templates/chrony.conf.almalinux.tmpl | 45 ++++++++++++++++++ - templates/chrony.conf.cloudlinux.tmpl | 45 ++++++++++++++++++ - templates/ntp.conf.almalinux.tmpl | 61 +++++++++++++++++++++++++ - templates/ntp.conf.cloudlinux.tmpl | 61 +++++++++++++++++++++++++ - 13 files changed, 238 insertions(+), 21 deletions(-) + systemd/cloud-final.service.tmpl | 2 +- + systemd/cloud-init-local.service.tmpl | 10 ++-- + systemd/cloud-init.service.tmpl | 2 +- + templates/chrony.conf.almalinux.tmpl | 51 ++++++++++++++++++++ + templates/chrony.conf.cloudlinux.tmpl | 51 ++++++++++++++++++++ + templates/ntp.conf.almalinux.tmpl | 64 +++++++++++++++++++++++++ + templates/ntp.conf.cloudlinux.tmpl | 64 +++++++++++++++++++++++++ + 12 files changed, 252 insertions(+), 17 deletions(-) create mode 100644 templates/chrony.conf.almalinux.tmpl create mode 100644 templates/chrony.conf.cloudlinux.tmpl create mode 100644 templates/ntp.conf.almalinux.tmpl create mode 100644 templates/ntp.conf.cloudlinux.tmpl diff --git a/cloudinit/config/cc_ca_certs.py b/cloudinit/config/cc_ca_certs.py -index 4dc0868..1665d30 100644 +index 8d3fd9a..4dd5843 100644 --- a/cloudinit/config/cc_ca_certs.py +++ b/cloudinit/config/cc_ca_certs.py -@@ -51,6 +51,12 @@ for distro in ( +@@ -57,6 +57,12 @@ for distro in ( ): DISTRO_OVERRIDES[distro] = DISTRO_OVERRIDES["opensuse"] @@ -57,7 +53,7 @@ index 4dc0868..1665d30 100644 MODULE_DESCRIPTION = """\ This module adds CA certificates to the system's CA store and updates any related files using the appropriate OS-specific utility. The default CA -@@ -66,6 +72,8 @@ configuration option ``remove_defaults``. +@@ -72,6 +78,8 @@ configuration option ``remove_defaults``. order to provide the ``update-ca-certificates`` command. """ distros = [ @@ -65,12 +61,12 @@ index 4dc0868..1665d30 100644 + "cloudlinux", "alpine", "debian", - "rhel", + "fedora", diff --git a/cloudinit/config/cc_ntp.py b/cloudinit/config/cc_ntp.py -index b5620f3..eae4099 100644 +index 9eef24f..1015d43 100644 --- a/cloudinit/config/cc_ntp.py +++ b/cloudinit/config/cc_ntp.py -@@ -110,14 +110,6 @@ DISTRO_CLIENT_CONFIG = { +@@ -109,14 +109,6 @@ DISTRO_CLIENT_CONFIG = { "service_name": "ntpd", }, }, @@ -85,7 +81,7 @@ index b5620f3..eae4099 100644 "cos": { "chrony": { "service_name": "chronyd", -@@ -225,6 +217,9 @@ DISTRO_CLIENT_CONFIG = { +@@ -224,6 +216,9 @@ DISTRO_CLIENT_CONFIG = { for distro in ("opensuse-microos", "opensuse-tumbleweed", "opensuse-leap"): DISTRO_CLIENT_CONFIG[distro] = DISTRO_CLIENT_CONFIG["opensuse"] @@ -96,10 +92,10 @@ index b5620f3..eae4099 100644 DISTRO_CLIENT_CONFIG[distro] = DISTRO_CLIENT_CONFIG["sles"] diff --git a/cloudinit/config/cc_resolv_conf.py b/cloudinit/config/cc_resolv_conf.py -index 4629ca7..21057a1 100644 +index aa88919..4eb1d76 100644 --- a/cloudinit/config/cc_resolv_conf.py +++ b/cloudinit/config/cc_resolv_conf.py -@@ -58,7 +58,9 @@ meta: MetaSchema = { +@@ -57,7 +57,9 @@ meta: MetaSchema = { "title": "Configure resolv.conf", "description": MODULE_DESCRIPTION, "distros": [ @@ -110,10 +106,10 @@ index 4629ca7..21057a1 100644 "mariner", "opensuse", diff --git a/cloudinit/settings.py b/cloudinit/settings.py -index edbb217..660cec3 100644 +index 5ced21b..51cb115 100644 --- a/cloudinit/settings.py +++ b/cloudinit/settings.py -@@ -60,7 +60,7 @@ CFG_BUILTIN = { +@@ -61,7 +61,7 @@ CFG_BUILTIN = { "cloud_dir": "/var/lib/cloud", "templates_dir": "/etc/cloud/templates/", }, @@ -123,7 +119,7 @@ index edbb217..660cec3 100644 }, "vendor_data": {"enabled": True, "prefix": []}, diff --git a/cloudinit/sources/DataSourceRbxCloud.py b/cloudinit/sources/DataSourceRbxCloud.py -index 6890562..0b3c80c 100644 +index 9214f1b..14880ec 100644 --- a/cloudinit/sources/DataSourceRbxCloud.py +++ b/cloudinit/sources/DataSourceRbxCloud.py @@ -60,7 +60,7 @@ def _sub_arp(cmd): @@ -135,33 +131,11 @@ index 6890562..0b3c80c 100644 source_param = "-s" for item in items: try: -diff --git a/systemd/cloud-config.service.tmpl b/systemd/cloud-config.service.tmpl -index d5568a6..a4d6038 100644 ---- a/systemd/cloud-config.service.tmpl -+++ b/systemd/cloud-config.service.tmpl -@@ -4,7 +4,7 @@ Description=Apply the settings specified in cloud-config - After=network-online.target cloud-config.target - After=snapd.seeded.service - Wants=network-online.target cloud-config.target --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} diff --git a/systemd/cloud-final.service.tmpl b/systemd/cloud-final.service.tmpl -index 85f423a..578c7f4 100644 +index bcf8b00..6d34761 100644 --- a/systemd/cloud-final.service.tmpl +++ b/systemd/cloud-final.service.tmpl -@@ -7,7 +7,7 @@ After=multi-user.target - Before=apt-daily.service - {% endif %} - Wants=network-online.target cloud-config.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} -@@ -19,7 +19,7 @@ ExecStart=/usr/bin/cloud-init modules --mode=final +@@ -18,7 +18,7 @@ ExecStart=/usr/bin/cloud-init modules --mode=final RemainAfterExit=yes TimeoutSec=0 KillMode=process @@ -171,7 +145,7 @@ index 85f423a..578c7f4 100644 ExecStartPost=/bin/sh -c 'u=NetworkManager.service; \ out=$(systemctl show --property=SubState $u) || exit; \ diff --git a/systemd/cloud-init-local.service.tmpl b/systemd/cloud-init-local.service.tmpl -index 6f3f9d8..f5521c4 100644 +index 3a1ca7f..853ae2c 100644 --- a/systemd/cloud-init-local.service.tmpl +++ b/systemd/cloud-init-local.service.tmpl @@ -1,23 +1,23 @@ @@ -202,15 +176,7 @@ index 6f3f9d8..f5521c4 100644 Before=firewalld.target Conflicts=shutdown.target {% endif %} -@@ -26,14 +26,14 @@ Before=sysinit.target - Conflicts=shutdown.target - {% endif %} - RequiresMountsFor=/var/lib/cloud --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} +@@ -32,7 +32,7 @@ ConditionEnvironment=!KERNEL_CMDLINE=cloud-init=disabled [Service] Type=oneshot @@ -220,7 +186,7 @@ index 6f3f9d8..f5521c4 100644 ExecStartPre=/sbin/restorecon /run/cloud-init ExecStartPre=/usr/bin/touch /run/cloud-init/enabled diff --git a/systemd/cloud-init.service.tmpl b/systemd/cloud-init.service.tmpl -index 1b1f9a8..875555d 100644 +index bf91164..1ae88f7 100644 --- a/systemd/cloud-init.service.tmpl +++ b/systemd/cloud-init.service.tmpl @@ -1,7 +1,7 @@ @@ -232,21 +198,12 @@ index 1b1f9a8..875555d 100644 DefaultDependencies=no {% endif %} Wants=cloud-init-local.service -@@ -39,7 +39,7 @@ Before=shutdown.target - Conflicts=shutdown.target - {% endif %} - Before=systemd-user-sessions.service --{% if variant == "rhel" %} -+{% if variant in ["almalinux", "cloudlinux", "rhel"] %} - ConditionPathExists=!/etc/cloud/cloud-init.disabled - ConditionKernelCommandLine=!cloud-init=disabled - {% endif %} diff --git a/templates/chrony.conf.almalinux.tmpl b/templates/chrony.conf.almalinux.tmpl new file mode 100644 -index 0000000..5b3542e +index 0000000..43b1f5d --- /dev/null +++ b/templates/chrony.conf.almalinux.tmpl -@@ -0,0 +1,45 @@ +@@ -0,0 +1,51 @@ +## template:jinja +# Use public servers from the pool.ntp.org project. +# Please consider joining the pool (http://www.pool.ntp.org/join.html). @@ -260,6 +217,12 @@ index 0000000..5b3542e +{% for server in servers -%} +server {{server}} iburst +{% endfor %} ++{% for peer in peers -%} ++peer {{peer}} ++{% endfor %} ++{% for a in allow -%} ++allow {{a}} ++{% endfor %} + +# Record the rate at which the system clock gains/losses time. +driftfile /var/lib/chrony/drift @@ -294,10 +257,10 @@ index 0000000..5b3542e +#log measurements statistics tracking diff --git a/templates/chrony.conf.cloudlinux.tmpl b/templates/chrony.conf.cloudlinux.tmpl new file mode 100644 -index 0000000..5b3542e +index 0000000..43b1f5d --- /dev/null +++ b/templates/chrony.conf.cloudlinux.tmpl -@@ -0,0 +1,45 @@ +@@ -0,0 +1,51 @@ +## template:jinja +# Use public servers from the pool.ntp.org project. +# Please consider joining the pool (http://www.pool.ntp.org/join.html). @@ -311,6 +274,12 @@ index 0000000..5b3542e +{% for server in servers -%} +server {{server}} iburst +{% endfor %} ++{% for peer in peers -%} ++peer {{peer}} ++{% endfor %} ++{% for a in allow -%} ++allow {{a}} ++{% endfor %} + +# Record the rate at which the system clock gains/losses time. +driftfile /var/lib/chrony/drift @@ -345,10 +314,10 @@ index 0000000..5b3542e +#log measurements statistics tracking diff --git a/templates/ntp.conf.almalinux.tmpl b/templates/ntp.conf.almalinux.tmpl new file mode 100644 -index 0000000..62b4776 +index 0000000..9884df5 --- /dev/null +++ b/templates/ntp.conf.almalinux.tmpl -@@ -0,0 +1,61 @@ +@@ -0,0 +1,64 @@ +## template:jinja + +# For more information about this file, see the man pages @@ -382,6 +351,9 @@ index 0000000..62b4776 +{% for server in servers -%} +server {{server}} iburst +{% endfor %} ++{% for peer in peers -%} ++peer {{peer}} ++{% endfor %} + +#broadcast 192.168.1.255 autokey # broadcast server +#broadcastclient # broadcast client @@ -412,10 +384,10 @@ index 0000000..62b4776 +#statistics clockstats cryptostats loopstats peerstats diff --git a/templates/ntp.conf.cloudlinux.tmpl b/templates/ntp.conf.cloudlinux.tmpl new file mode 100644 -index 0000000..62b4776 +index 0000000..9884df5 --- /dev/null +++ b/templates/ntp.conf.cloudlinux.tmpl -@@ -0,0 +1,61 @@ +@@ -0,0 +1,64 @@ +## template:jinja + +# For more information about this file, see the man pages @@ -449,6 +421,9 @@ index 0000000..62b4776 +{% for server in servers -%} +server {{server}} iburst +{% endfor %} ++{% for peer in peers -%} ++peer {{peer}} ++{% endfor %} + +#broadcast 192.168.1.255 autokey # broadcast server +#broadcastclient # broadcast client @@ -478,5 +453,5 @@ index 0000000..62b4776 +# Enable writing of statistics records. +#statistics clockstats cryptostats loopstats peerstats -- -2.41.0 +2.27.0 diff --git a/SPECS/cloud-init.spec b/SPECS/cloud-init.spec index e4ec1b7..6868a04 100644 --- a/SPECS/cloud-init.spec +++ b/SPECS/cloud-init.spec @@ -1,6 +1,6 @@ Name: cloud-init Version: 23.4 -Release: 6%{?dist}.alma +Release: 6%{?dist}.alma.1 Summary: Cloud instance init scripts License: ASL 2.0 or GPLv3 URL: http://launchpad.net/cloud-init @@ -240,13 +240,14 @@ fi %config(noreplace) %{_sysconfdir}/rsyslog.d/21-cloudinit.conf %changelog -* Thu Mar 28 2024 Elkhan Mammadli - 23.4-6.alma +* Thu Mar 28 2024 Elkhan Mammadli - 23.4-6.alma.1 - 0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch * Mon Feb 26 2024 Miroslav Rezanina - 23.4-6 - ci-fix-Add-types-to-network-v1-schema-4841.patch [RHEL-21324] - Resolves: RHEL-21324 ([rhel-9] The schema WARNING info for network-config.json is not suitable in cloud-init-23.4) + * Mon Feb 19 2024 Miroslav Rezanina - 23.4-5 - ci-Revert-Use-grep-for-faster-parsing-of-cloud-config-i.patch [RHEL-22255] - Resolves: RHEL-22255 @@ -335,6 +336,7 @@ fi - ci-Allow-growpart-to-resize-encrypted-partitions-1316.patch [bz#2166245] - Resolves: bz#2166245 (Add support for resizing encrypted root volume) + * Fri Jan 27 2023 Camilla Conte - 22.1-8 - ci-cc_set_hostname-ignore-var-lib-cloud-data-set-hostna.patch [bz#2140893] - Resolves: bz#2140893