diff --git a/SOURCES/ci-Fix-import-error-for-passlib-on-Python-3.13.patch b/SOURCES/ci-Fix-import-error-for-passlib-on-Python-3.13.patch deleted file mode 100644 index b6e54c5..0000000 --- a/SOURCES/ci-Fix-import-error-for-passlib-on-Python-3.13.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 09b70436b3a0aae1fe24fdde6e8cdd7ee98d9c15 Mon Sep 17 00:00:00 2001 -From: Brett Holman -Date: Tue, 5 Dec 2023 16:40:03 -0700 -Subject: [PATCH] fix(python3.13): Fix import error for passlib on Python 3.13 - (#4669) - ---- - cloudinit/sources/DataSourceAzure.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/cloudinit/sources/DataSourceAzure.py b/cloudinit/sources/DataSourceAzure.py -index 11c14e2001f..4c5780f767d 100644 ---- a/cloudinit/sources/DataSourceAzure.py -+++ b/cloudinit/sources/DataSourceAzure.py -@@ -58,7 +58,7 @@ - ) - except (ImportError, AttributeError): - try: -- import passlib -+ import passlib.hash - - blowfish_hash = passlib.hash.sha512_crypt.hash - except ImportError: diff --git a/SOURCES/ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch b/SOURCES/ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch index 7cc3bc1..6eb7ed9 100644 --- a/SOURCES/ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch +++ b/SOURCES/ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch @@ -1,15 +1,14 @@ -From 2da948152c4b7b2f30dc6189d0072f7562df1ad5 Mon Sep 17 00:00:00 2001 +From 94c0cd9c656877250f7e5cfe05325a42bbdec182 Mon Sep 17 00:00:00 2001 From: Ani Sinha Date: Fri, 4 Oct 2024 02:38:23 +0530 -Subject: [PATCH 1/3] Fix metric setting for ifcfg network connections for rhel +Subject: [PATCH 1/2] Fix metric setting for ifcfg network connections for rhel (#5777) RH-Author: xiachen -RH-MergeRequest: 112: Fix metric setting for ifcfg network connections for rhel (#5777) -RH-Jira: RHEL-65016 -RH-Acked-by: Emanuele Giuseppe Esposito +RH-MergeRequest: 145: Fix metric setting for ifcfg network connections for rhel (#5777) +RH-Jira: RHEL-65018 RH-Acked-by: Ani Sinha -RH-Commit: [1/1] ee573dfb2dccc59f2c9b74ca3f95026f96c49998 (xiachen/cloud-init-centos) +RH-Commit: [1/2] a18205f1ffa455a2ccd836ba6baa12b7da0afbde (xiachen/cloud-init) Most RHEL systems use Network manager to bring up manage network connections. Network manager does not recognize "METRIC" option for network connections. @@ -31,7 +30,7 @@ Signed-off-by: Amy Chen 2 files changed, 38 insertions(+), 20 deletions(-) diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py -index 32ee7901..503b6993 100644 +index 7eb430ed1..b50a6a8a0 100644 --- a/cloudinit/net/sysconfig.py +++ b/cloudinit/net/sysconfig.py @@ -205,7 +205,7 @@ class Route(ConfigMap): @@ -77,7 +76,7 @@ index 32ee7901..503b6993 100644 else: # add default routes only to ifcfg files, not diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py -index de149f5e..00198232 100644 +index 2d716f4b5..4673e4eaf 100644 --- a/tests/unittests/test_net.py +++ b/tests/unittests/test_net.py @@ -1345,7 +1345,7 @@ NETWORK_CONFIGS = { @@ -89,7 +88,7 @@ index de149f5e..00198232 100644 ONBOOT=yes TYPE=Ethernet USERCTL=no""" -@@ -1519,7 +1519,7 @@ NETWORK_CONFIGS = { +@@ -1521,7 +1521,7 @@ NETWORK_CONFIGS = { HWADDR=c0:d6:9f:2c:e8:80 IPADDR=192.168.21.3 NETMASK=255.255.255.0 @@ -98,7 +97,7 @@ index de149f5e..00198232 100644 ONBOOT=yes TYPE=Ethernet USERCTL=no""" -@@ -6072,24 +6072,27 @@ USERCTL=no +@@ -5725,24 +5725,27 @@ USERCTL=no } }, } diff --git a/SOURCES/ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch b/SOURCES/ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch index 781bcef..6ce4bf1 100644 --- a/SOURCES/ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch +++ b/SOURCES/ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch @@ -1,15 +1,15 @@ -From ab36aacfb2f98d865d9e03df81f9102b04d307dd Mon Sep 17 00:00:00 2001 +From 038a391b7016f16a7336d67965762a7dbf3ba662 Mon Sep 17 00:00:00 2001 From: Ani Sinha Date: Tue, 5 Nov 2024 04:07:36 +0530 Subject: [PATCH] Prevent NM from handling DNS when network interfaces have DNS config (#5846) RH-Author: Ani Sinha -RH-MergeRequest: 117: Prevent NM from handling DNS when network interfaces have DNS config (#5846) -RH-Jira: RHEL-65769 +RH-MergeRequest: 150: Prevent NM from handling DNS when network interfaces have DNS config (#5846) +RH-Jira: RHEL-65778 RH-Acked-by: Emanuele Giuseppe Esposito RH-Acked-by: Miroslav Rezanina -RH-Commit: [1/1] cc175ec567ba5500f2a69d7943e8d5ee5c3822c8 (anisinha/cloud-init) +RH-Commit: [1/1] b464ef219eba1a0c718dda5ed96b6f88e1273f99 In the change under PR #5401, we use global DNS configuration as well as DNS and search domain information from interface config and use it to populate @@ -30,7 +30,7 @@ Signed-off-by: Ani Sinha 2 files changed, 181 insertions(+), 5 deletions(-) diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py -index 96652e15..363d052a 100644 +index e4a65187f..4898a2fd1 100644 --- a/cloudinit/net/sysconfig.py +++ b/cloudinit/net/sysconfig.py @@ -905,17 +905,35 @@ class Renderer(renderer.Renderer): @@ -75,7 +75,7 @@ index 96652e15..363d052a 100644 if len(content) == 0: diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py -index 8a75c42b..215807ba 100644 +index ddb45dc69..47b36d052 100644 --- a/tests/unittests/test_net.py +++ b/tests/unittests/test_net.py @@ -967,6 +967,164 @@ dns = none diff --git a/SOURCES/ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch b/SOURCES/ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch index c86895b..b2e69b6 100644 --- a/SOURCES/ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch +++ b/SOURCES/ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch @@ -1,15 +1,15 @@ -From 60eca5a45a35982f42db58dd0d6d53bd2587e477 Mon Sep 17 00:00:00 2001 +From 1df31428c87f08c790c300ba402318378cea8d65 Mon Sep 17 00:00:00 2001 From: James Falcon Date: Thu, 10 Oct 2024 23:19:28 -0500 -Subject: [PATCH 2/3] fix: Render bridges correctly for v2 on sysconfig with +Subject: [PATCH 1/2] fix: Render bridges correctly for v2 on sysconfig with set-name (#5674) RH-Author: xiachen -RH-MergeRequest: 114: fix: Render bridges correctly for v2 on sysconfig with set-name (#5674) -RH-Jira: RHEL-65019 +RH-MergeRequest: 147: fix: Render bridges correctly for v2 on sysconfig with set-name (#5674) +RH-Jira: RHEL-65021 RH-Acked-by: Emanuele Giuseppe Esposito RH-Acked-by: Ani Sinha -RH-Commit: [1/2] 4171be9d48c4c4f7b8aa8d231cea8591daec9c93 (xiachen/cloud-init-centos) +RH-Commit: [1/2] 7f7fce173ee9a3ba719fc36580fbce813c5bfbd0 (xiachen/cloud-init) When listing interfaces in v2 format, we should expect to be able to reference other interfaces using the name in the configuration, not @@ -31,7 +31,7 @@ Signed-off-by: Amy Chen 4 files changed, 128 insertions(+), 28 deletions(-) diff --git a/cloudinit/net/eni.py b/cloudinit/net/eni.py -index 59dc395f..fa0b47af 100644 +index 486fa22dc..ac0306d6a 100644 --- a/cloudinit/net/eni.py +++ b/cloudinit/net/eni.py @@ -5,6 +5,7 @@ import glob @@ -55,7 +55,7 @@ index 59dc395f..fa0b47af 100644 subnets = iface.get("subnets", {}) accept_ra = iface.pop("accept-ra", None) diff --git a/cloudinit/net/network_state.py b/cloudinit/net/network_state.py -index 9f34467b..fb08491f 100644 +index 14c57cdcc..226421bd0 100644 --- a/cloudinit/net/network_state.py +++ b/cloudinit/net/network_state.py @@ -411,6 +411,7 @@ class NetworkStateInterpreter: @@ -120,7 +120,7 @@ index 9f34467b..fb08491f 100644 def _handle_bond_bridge(self, command, cmd_type=None): diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py -index 503b6993..96652e15 100644 +index b50a6a8a0..e4a65187f 100644 --- a/cloudinit/net/sysconfig.py +++ b/cloudinit/net/sysconfig.py @@ -6,7 +6,7 @@ import io @@ -141,7 +141,7 @@ index 503b6993..96652e15 100644 iface_subnets = iface.get("subnets", []) iface_cfg = iface_contents[iface_name] route_cfg = iface_cfg.routes -@@ -926,7 +926,9 @@ class Renderer(renderer.Renderer): +@@ -924,7 +924,9 @@ class Renderer(renderer.Renderer): return out @classmethod @@ -152,7 +152,7 @@ index 503b6993..96652e15 100644 bridge_key_map = { old_k: new_k for old_k, new_k in cls.cfg_key_maps[flavor].items() -@@ -1007,23 +1009,29 @@ class Renderer(renderer.Renderer): +@@ -1005,23 +1007,29 @@ class Renderer(renderer.Renderer): @classmethod def _render_sysconfig( @@ -188,7 +188,7 @@ index 503b6993..96652e15 100644 cls._render_bond_interfaces(network_state, iface_contents, flavor) cls._render_vlan_interfaces(network_state, iface_contents, flavor) diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py -index 00198232..41e6fa56 100644 +index 4673e4eaf..004da81ab 100644 --- a/tests/unittests/test_net.py +++ b/tests/unittests/test_net.py @@ -4489,6 +4489,95 @@ iface bond0 inet6 static diff --git a/SOURCES/ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch b/SOURCES/ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch index 8aa2305..5ebc106 100644 --- a/SOURCES/ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch +++ b/SOURCES/ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch @@ -1,15 +1,15 @@ -From 59079c817ead856135ce40698f4d350a425cd65e Mon Sep 17 00:00:00 2001 +From 58904df7d689df6e3d1d4ddf47b5cb5a267006da Mon Sep 17 00:00:00 2001 From: James Falcon Date: Fri, 11 Oct 2024 13:58:19 -0500 -Subject: [PATCH 3/3] fix: Render v2 bridges correctly on network-manager with +Subject: [PATCH 2/2] fix: Render v2 bridges correctly on network-manager with set-name (#5740) RH-Author: xiachen -RH-MergeRequest: 114: fix: Render bridges correctly for v2 on sysconfig with set-name (#5674) -RH-Jira: RHEL-65019 +RH-MergeRequest: 147: fix: Render bridges correctly for v2 on sysconfig with set-name (#5674) +RH-Jira: RHEL-65021 RH-Acked-by: Emanuele Giuseppe Esposito RH-Acked-by: Ani Sinha -RH-Commit: [2/2] a33642f97a8e5cb3816f17ce726187aa33825362 (xiachen/cloud-init-centos) +RH-Commit: [2/2] e101d8ff06a379752958a3eb19d209bcb7d1e0ed (xiachen/cloud-init) Similar to the recent sysconfig fix, ensure bridges render correctly for configs that contain `set-name`. @@ -24,7 +24,7 @@ Signed-off-by: Amy Chen 2 files changed, 98 insertions(+), 2 deletions(-) diff --git a/cloudinit/net/network_manager.py b/cloudinit/net/network_manager.py -index a13d4c14..67614399 100644 +index 0ba210b74..f50fafa39 100644 --- a/cloudinit/net/network_manager.py +++ b/cloudinit/net/network_manager.py @@ -464,11 +464,13 @@ class Renderer(renderer.Renderer): @@ -44,7 +44,7 @@ index a13d4c14..67614399 100644 # And finally write the files diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py -index 41e6fa56..8a75c42b 100644 +index 004da81ab..ddb45dc69 100644 --- a/tests/unittests/test_net.py +++ b/tests/unittests/test_net.py @@ -4577,6 +4577,94 @@ iface bond0 inet6 static diff --git a/SOURCES/ci-fix-nocloud-smbios-datasource-definition.patch b/SOURCES/ci-fix-nocloud-smbios-datasource-definition.patch new file mode 100644 index 0000000..4d0cec6 --- /dev/null +++ b/SOURCES/ci-fix-nocloud-smbios-datasource-definition.patch @@ -0,0 +1,103 @@ +From 75e658591f6187f73eb0baa3291bde01db62cc5e Mon Sep 17 00:00:00 2001 +From: Brett Holman +Date: Fri, 23 Feb 2024 11:16:15 -0700 +Subject: [PATCH] fix(nocloud): smbios datasource definition + +RH-Author: Ani Sinha +RH-MergeRequest: 154: fix(nocloud): smbios datasource definition +RH-Jira: RHEL-79774 +RH-Acked-by: Emanuele Giuseppe Esposito +RH-Acked-by: Jon Maloy +RH-Commit: [1/1] 3ce501f6167ffafcb6dea7df37589d348039a371 + +deprecate nocloud-net name + +(cherry picked from commit 66b5ce9d5f94c0c6625972fdfdca3796d365b069) +--- + cloudinit/sources/DataSourceNoCloud.py | 39 ++++++++++++++++++++++---- + cloudinit/sources/__init__.py | 11 +++++--- + 2 files changed, 41 insertions(+), 9 deletions(-) + +diff --git a/cloudinit/sources/DataSourceNoCloud.py b/cloudinit/sources/DataSourceNoCloud.py +index 55a16638..7581f0a5 100644 +--- a/cloudinit/sources/DataSourceNoCloud.py ++++ b/cloudinit/sources/DataSourceNoCloud.py +@@ -11,6 +11,7 @@ + import errno + import logging + import os ++from functools import partial + + from cloudinit import dmi, sources, util + from cloudinit.net import eni +@@ -368,12 +369,40 @@ class DataSourceNoCloudNet(DataSourceNoCloud): + self.supported_seed_starts = ("http://", "https://") + + def ds_detect(self): +- """NoCloud requires "nocloud-net" as the way to specify +- seeding from an http(s) address. This diverges from all other +- datasources in that it does a kernel commandline match on something +- other than the datasource dsname for only DEP_NETWORK. ++ """Check dmi and kernel commandline for dsname ++ ++ NoCloud historically used "nocloud-net" as its dsname ++ for network timeframe (DEP_NETWORK), which supports http(s) urls. ++ For backwards compatiblity, check for that dsname. + """ +- return "nocloud-net" == sources.parse_cmdline() ++ log_deprecated = partial( ++ util.deprecate, ++ deprecated="The 'nocloud-net' datasource name", ++ deprecated_version="24.1", ++ extra_message=( ++ "Use 'nocloud' instead, which uses the seedfrom protocol" ++ "scheme (http// or file://) to decide how to run." ++ ), ++ ) ++ ++ if "nocloud-net" == sources.parse_cmdline(): ++ log_deprecated() ++ return True ++ ++ serial = sources.parse_cmdline_or_dmi( ++ dmi.read_dmi_data("system-serial-number") or "" ++ ).lower() ++ ++ if serial in (self.dsname.lower(), "nocloud-net"): ++ LOG.debug( ++ "Machine is configured by dmi serial number to run on " ++ "single datasource %s.", ++ self, ++ ) ++ if serial == "nocloud-net": ++ log_deprecated() ++ return True ++ return False + + + # Used to match classes to dependencies +diff --git a/cloudinit/sources/__init__.py b/cloudinit/sources/__init__.py +index 453801be..e89af3d0 100644 +--- a/cloudinit/sources/__init__.py ++++ b/cloudinit/sources/__init__.py +@@ -1198,10 +1198,13 @@ def parse_cmdline() -> str: + """Check if command line argument for this datasource was passed + Passing by command line overrides runtime datasource detection + """ +- cmdline = util.get_cmdline() +- ds_parse_0 = re.search(r"ds=([^\s;]+)", cmdline) +- ds_parse_1 = re.search(r"ci\.ds=([^\s;]+)", cmdline) +- ds_parse_2 = re.search(r"ci\.datasource=([^\s;]+)", cmdline) ++ return parse_cmdline_or_dmi(util.get_cmdline()) ++ ++ ++def parse_cmdline_or_dmi(input: str) -> str: ++ ds_parse_0 = re.search(r"(?:^|\s)ds=([^\s;]+)", input) ++ ds_parse_1 = re.search(r"(?:^|\s)ci\.ds=([^\s;]+)", input) ++ ds_parse_2 = re.search(r"(?:^|\s)ci\.datasource=([^\s;]+)", input) + ds = ds_parse_0 or ds_parse_1 or ds_parse_2 + deprecated = ds_parse_1 or ds_parse_2 + if deprecated: +-- +2.48.1 + diff --git a/SOURCES/ci-fix-python3.13-Fix-import-error-for-passlib-on-Pytho.patch b/SOURCES/ci-fix-python3.13-Fix-import-error-for-passlib-on-Pytho.patch new file mode 100644 index 0000000..7d1f1de --- /dev/null +++ b/SOURCES/ci-fix-python3.13-Fix-import-error-for-passlib-on-Pytho.patch @@ -0,0 +1,34 @@ +From e6e7c274235d924fde752b228f68ec5773e39029 Mon Sep 17 00:00:00 2001 +From: Brett Holman +Date: Tue, 5 Dec 2023 16:40:03 -0700 +Subject: [PATCH 2/2] fix(python3.13): Fix import error for passlib on Python + 3.13 (#4669) + +RH-Author: xiachen +RH-MergeRequest: 145: Fix metric setting for ifcfg network connections for rhel (#5777) +RH-Jira: RHEL-65018 +RH-Acked-by: Ani Sinha +RH-Commit: [2/2] 226ae26a9f903774cb36f8f72b89071ba4545a66 (xiachen/cloud-init) + +(cherry picked from commit 09b70436b3a0aae1fe24fdde6e8cdd7ee98d9c15) +Signed-off-by: Amy Chen +--- + cloudinit/sources/DataSourceAzure.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cloudinit/sources/DataSourceAzure.py b/cloudinit/sources/DataSourceAzure.py +index eb0304c3d..939210100 100644 +--- a/cloudinit/sources/DataSourceAzure.py ++++ b/cloudinit/sources/DataSourceAzure.py +@@ -58,7 +58,7 @@ try: + ) + except (ImportError, AttributeError): + try: +- import passlib ++ import passlib.hash + + blowfish_hash = passlib.hash.sha512_crypt.hash + except ImportError: +-- +2.39.3 + diff --git a/SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v2.patch b/SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v.patch similarity index 83% rename from SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v2.patch rename to SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v.patch index 0c3a8f7..cf33e50 100644 --- a/SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v2.patch +++ b/SOURCES/ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v.patch @@ -1,15 +1,25 @@ -From 436e6f5ce3fbb8b391a2158538873644058904e6 Mon Sep 17 00:00:00 2001 +From 9a3c16dc89d2813c90df2e57e71ae5df704083be Mon Sep 17 00:00:00 2001 From: James Falcon Date: Tue, 9 Jan 2024 10:32:12 -0600 Subject: [PATCH] refactor: Ensure internal DNS state same for v1 and v2 (#4756) +RH-Author: Ani Sinha +RH-MergeRequest: 152: refactor: Ensure internal DNS state same for v1 and v2 (#4756) +RH-Jira: RHEL-68409 +RH-Acked-by: xiachen +RH-Acked-by: Emanuele Giuseppe Esposito +RH-Commit: [1/1] f006996f7b418103ffaf73ff9ded5b5d149bedf6 + When defining interface-level DNS on the network state, v1 uses the "nameservers" key whereas v2 was using an "addresses" key. This commit updates the v2 parsing to set the key as "nameservers". Also update networkd renderer as this was only renderer using the v2 "addresses" key. + +(cherry picked from commit 436e6f5ce3fbb8b391a2158538873644058904e6) +Signed-off-by: Ani Sinha --- cloudinit/net/network_state.py | 2 +- cloudinit/net/networkd.py | 13 ++++--------- @@ -17,7 +27,7 @@ Also update networkd renderer as this was only renderer using the v2 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/cloudinit/net/network_state.py b/cloudinit/net/network_state.py -index b6851080bba..e35288b46de 100644 +index 226421bd0..82c3bf894 100644 --- a/cloudinit/net/network_state.py +++ b/cloudinit/net/network_state.py @@ -336,7 +336,7 @@ class NetworkStateInterpreter: @@ -30,7 +40,7 @@ index b6851080bba..e35288b46de 100644 } diff --git a/cloudinit/net/networkd.py b/cloudinit/net/networkd.py -index 0978849c898..29f466eda54 100644 +index 0978849c8..29f466eda 100644 --- a/cloudinit/net/networkd.py +++ b/cloudinit/net/networkd.py @@ -221,12 +221,6 @@ class Renderer(renderer.Renderer): @@ -61,7 +71,7 @@ index 0978849c898..29f466eda54 100644 def parse_dhcp_overrides(self, cfg: CfgParser, device, dhcp, version): dhcp_config_maps = { diff --git a/tests/unittests/net/test_network_state.py b/tests/unittests/net/test_network_state.py -index 7d304ca3ad5..74a6bb34c88 100644 +index 7d304ca3a..74a6bb34c 100644 --- a/tests/unittests/net/test_network_state.py +++ b/tests/unittests/net/test_network_state.py @@ -258,7 +258,10 @@ class TestNetworkStateParseNameservers: @@ -76,3 +86,6 @@ index 7d304ca3ad5..74a6bb34c88 100644 assert iface["dns"]["search"] == ["spam.local"] else: assert "dns" not in iface +-- +2.39.3 + diff --git a/SPECS/cloud-init.spec b/SPECS/cloud-init.spec index 4b3401f..5c1a763 100644 --- a/SPECS/cloud-init.spec +++ b/SPECS/cloud-init.spec @@ -1,85 +1,88 @@ -Name: cloud-init -Version: 23.4 -Release: 19%{?dist}.4.alma.1 -Summary: Cloud instance init scripts -License: ASL 2.0 or GPLv3 -URL: http://launchpad.net/cloud-init -Source0: https://github.com/canonical/cloud-init/archive/refs/tags/%{version}.tar.gz -Source1: cloud-init-tmpfiles.conf +Name: cloud-init +Version: 23.4 +Release: 19%{?dist}.5.alma.1 +Summary: Cloud instance init scripts +License: ASL 2.0 or GPLv3 +URL: http://launchpad.net/cloud-init +Source0: https://github.com/canonical/cloud-init/archive/refs/tags/%{version}.tar.gz +Source1: cloud-init-tmpfiles.conf # Source-git patches -Patch1: 0001-Add-initial-redhat-changes.patch -Patch2: 0002-Do-not-write-NM_CONTROLLED-no-in-generated-interface.patch -Patch3: 0003-Setting-autoconnect-priority-setting-for-network-scr.patch -Patch4: 0004-net-network_manager-do-not-set-may-fail-to-False-for.patch -Patch5: 0005-net-allow-dhcp6-configuration-from-generate_fallback.patch -Patch6: 0006-net-nm-check-for-presence-of-ifcfg-files-when-nm-con.patch -Patch7: 0007-test-jsonschema-Pin-jsonschema-version-4781.patch -Patch8: 0008-fix-clean-stop-warning-when-running-clean-command-47.patch +Patch1: 0001-Add-initial-redhat-changes.patch +Patch2: 0002-Do-not-write-NM_CONTROLLED-no-in-generated-interface.patch +Patch3: 0003-Setting-autoconnect-priority-setting-for-network-scr.patch +Patch4: 0004-net-network_manager-do-not-set-may-fail-to-False-for.patch +Patch5: 0005-net-allow-dhcp6-configuration-from-generate_fallback.patch +Patch6: 0006-net-nm-check-for-presence-of-ifcfg-files-when-nm-con.patch +Patch7: 0007-test-jsonschema-Pin-jsonschema-version-4781.patch +Patch8: 0008-fix-clean-stop-warning-when-running-clean-command-47.patch # For RHEL-22255 - [Azure][RHEL-9] cloud-init-23.4 cannot read "- Azure" datasource_list format -Patch9: ci-Revert-Use-grep-for-faster-parsing-of-cloud-config-i.patch -Patch10: ci-Pin-pythes-8.0.0.patch +Patch9: ci-Revert-Use-grep-for-faster-parsing-of-cloud-config-i.patch +Patch10: ci-Pin-pythes-8.0.0.patch # For RHEL-21324 - [rhel-9] The schema WARNING info for network-config.json is not suitable in cloud-init-23.4 -Patch11: ci-fix-Add-types-to-network-v1-schema-4841.patch +Patch11: ci-fix-Add-types-to-network-v1-schema-4841.patch # For RHEL-28549 - [RHEL 9.4] cloud-init 23.4 returns 2 on recoverable errors instead of 0 -Patch12: ci-Retain-exit-code-in-cloud-init-status-for-recoverabl.patch +Patch12: ci-Retain-exit-code-in-cloud-init-status-for-recoverabl.patch # For RHEL-20964 - [rhel-9]cloud-init fails to configure DNS/search domains for network-config v1 -Patch13: ci-fix-Correct-v2-NetworkManager-route-rendering-4637.patch +Patch13: ci-fix-Correct-v2-NetworkManager-route-rendering-4637.patch # For RHEL-20964 - [rhel-9]cloud-init fails to configure DNS/search domains for network-config v1 -Patch14: ci-feat-apply-global-DNS-to-interfaces-in-network-manag.patch +Patch14: ci-feat-apply-global-DNS-to-interfaces-in-network-manag.patch # For RHEL-29709 - Suggest to backport patch ff40d1a to undeprecate 'network' in schema route definition -Patch15: ci-fix-Undeprecate-network-in-schema-route-definition-5.patch +Patch15: ci-fix-Undeprecate-network-in-schema-route-definition-5.patch # For RHEL-32846 - [cloud-init][ESXi]VMware datasource resets on every boot causing it to lose network configuration [rhel-9] -Patch16: ci-fix-Fall-back-to-cached-local-ds-if-no-valid-ds-foun.patch +Patch16: ci-fix-Fall-back-to-cached-local-ds-if-no-valid-ds-foun.patch # For RHEL-36255 - [rhel-9.5] DataSourceNoCloudNet not configurable via config files -Patch17: ci-fix-Always-use-single-datasource-if-specified-5098.patch +Patch17: ci-fix-Always-use-single-datasource-if-specified-5098.patch # For RHEL-40217 - [Cloud-init] CloudstackDataSource cannot work with NetworkManager -Patch18: ci-fix-cloudstack-Use-parsed-lease-file-for-virtual-rou.patch +Patch18: ci-fix-cloudstack-Use-parsed-lease-file-for-virtual-rou.patch # For RHEL-17961 - [RHEL-9] cloud-init fails to configure DNS search domains -Patch19: ci-feat-sysconfig-Add-DNS-from-interface-config-to-reso.patch +Patch19: ci-feat-sysconfig-Add-DNS-from-interface-config-to-reso.patch # For RHEL-44337 - [rhel-9] fix `SUDO` configuration schema for users and groups -Patch20: ci-fix-jsonschema-Add-missing-sudo-definition-5418.patch +Patch20: ci-fix-jsonschema-Add-missing-sudo-definition-5418.patch # For RHEL-44337 - [rhel-9] fix `SUDO` configuration schema for users and groups -Patch21: ci-doc-update-examples-to-reflect-alternative-ways-to-p.patch +Patch21: ci-doc-update-examples-to-reflect-alternative-ways-to-p.patch # For RHEL-44598 - fix pylint error and support python 3.12 -Patch22: ci-fix-dhcp-Guard-against-FileNotFoundError-and-NameErr.patch +Patch22: ci-fix-dhcp-Guard-against-FileNotFoundError-and-NameErr.patch # For RHEL-44598 - fix pylint error and support python 3.12 -Patch23: ci-fix-Address-TIOBE-abstract-interpretation-issues-486.patch +Patch23: ci-fix-Address-TIOBE-abstract-interpretation-issues-486.patch # For RHEL-44598 - fix pylint error and support python 3.12 -Patch24: ci-Update-pylint-version-to-support-python-3.12-5338.patch +Patch24: ci-Update-pylint-version-to-support-python-3.12-5338.patch # For RHEL-45262 - Deprecate the users ssh-authorized-keys property and permit deprecated hyphenated keys under users key -Patch25: ci-Deprecate-the-users-ssh-authorized-keys-property-516.patch +Patch25: ci-Deprecate-the-users-ssh-authorized-keys-property-516.patch # For RHEL-45262 - Deprecate the users ssh-authorized-keys property and permit deprecated hyphenated keys under users key -Patch26: ci-docs-Add-deprecated-system_info-to-schema-5168.patch +Patch26: ci-docs-Add-deprecated-system_info-to-schema-5168.patch # For RHEL-45262 - Deprecate the users ssh-authorized-keys property and permit deprecated hyphenated keys under users key -Patch27: ci-fix-schema-permit-deprecated-hyphenated-keys-under-u.patch +Patch27: ci-fix-schema-permit-deprecated-hyphenated-keys-under-u.patch # For RHEL-44916 - [RFE] Support metalink in yum repository config -Patch28: ci-Support-metalink-in-yum-repository-config-5444.patch +Patch28: ci-Support-metalink-in-yum-repository-config-5444.patch # For RHEL-46194 - [RHEL-9] It leaves the ipv6 networking config as blank in NM keyfile when config dhcp ipv6 with customization spec -Patch29: ci-fix-vmware-Set-IPv6-to-dhcp-when-there-is-no-IPv6-ad.patch +Patch29: ci-fix-vmware-Set-IPv6-to-dhcp-when-there-is-no-IPv6-ad.patch # For RHEL-46873 - Suggest to update schema to support metalink -Patch30: ci-fix-add-schema-rules-for-baseurl-and-metalink-in-yum.patch +Patch30: ci-fix-add-schema-rules-for-baseurl-and-metalink-in-yum.patch # For RHEL-49736 - [Cloud-init] [RHEL-9] Password reset feature broken with CloudstackDataSource -Patch31: ci-fix-Clean-cache-if-no-datasource-fallback-5499.patch +Patch31: ci-fix-Clean-cache-if-no-datasource-fallback-5499.patch # For RHEL-49674 - Support setting mirrorlist in yum repository config -Patch32: ci-Support-setting-mirrorlist-in-yum-repository-config-.patch +Patch32: ci-Support-setting-mirrorlist-in-yum-repository-config-.patch # For RHEL-54373 - [RHEL9]Revert "fix(vmware): Set IPv6 to dhcp when there is no IPv6 addr (#5471)" -Patch33: ci-Revert-fix-vmware-Set-IPv6-to-dhcp-when-there-is-no-.patch +Patch33: ci-Revert-fix-vmware-Set-IPv6-to-dhcp-when-there-is-no-.patch # For RHEL-54686 - [RHEL-9.5] cloud-init schema validation fails. -Patch34: ci-fix-Add-subnet-ipv4-ipv6-to-network-schema-5191.patch +Patch34: ci-fix-Add-subnet-ipv4-ipv6-to-network-schema-5191.patch +# For RHEL-65018 - Configuring metric for default gateway is not working [rhel-9.5.z] +Patch35: ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch +# For RHEL-65018 - Configuring metric for default gateway is not working [rhel-9.5.z] +Patch36: ci-fix-python3.13-Fix-import-error-for-passlib-on-Pytho.patch +# For RHEL-65021 - NoCloud - network_config bridges incorrectly configured [rhel-9.5.z] +Patch37: ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch +# For RHEL-65021 - NoCloud - network_config bridges incorrectly configured [rhel-9.5.z] +Patch38: ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch +# For RHEL-65778 - [RHEL-9] Prevent NM from handling DNS when network interfaces have DNS config [rhel-9.5.z] +Patch39: ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch +# For RHEL-68409 - cloud-init fails to configure DNS and search domain [rhel-9.5.z] +Patch40: ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v.patch +# For RHEL-79774 - [RHEL 9] Backport support for smbios datasource definition [rhel-9.5.z] +Patch41: ci-fix-nocloud-smbios-datasource-definition.patch -Patch35: ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch -Patch36: ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch -Patch37: ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch -Patch38: ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch - -# Patches were taken from: -# https://github.com/canonical/cloud-init/commit/09b70436b3a0aae1fe24fdde6e8cdd7ee98d9c15.patch -Patch39: ci-Fix-import-error-for-passlib-on-Python-3.13.patch -# https://github.com/canonical/cloud-init/commit/436e6f5ce3fbb8b391a2158538873644058904e6.patch -Patch40: ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v2.patch - -# AlmaLinux OS patches +# AlmaLinux Patch Patch3100: 0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch BuildArch: noarch @@ -90,46 +93,46 @@ BuildRequires: python3-setuptools BuildRequires: systemd # For tests -BuildRequires: iproute -BuildRequires: python3-configobj +BuildRequires: iproute +BuildRequires: python3-configobj # https://bugzilla.redhat.com/show_bug.cgi?id=1695953 -BuildRequires: python3-distro -BuildRequires: python3-jinja2 -BuildRequires: python3-jsonpatch -BuildRequires: python3-oauthlib -BuildRequires: python3-prettytable -BuildRequires: python3-pyserial -BuildRequires: python3-PyYAML -BuildRequires: python3-requests -BuildRequires: python3-six +BuildRequires: python3-distro +BuildRequires: python3-jinja2 +BuildRequires: python3-jsonpatch +BuildRequires: python3-oauthlib +BuildRequires: python3-prettytable +BuildRequires: python3-pyserial +BuildRequires: python3-PyYAML +BuildRequires: python3-requests +BuildRequires: python3-six # dnf is needed to make cc_ntp unit tests work # https://bugs.launchpad.net/cloud-init/+bug/1721573 -BuildRequires: /usr/bin/dnf +BuildRequires: /usr/bin/dnf -Requires: e2fsprogs -Requires: iproute -Requires: libselinux-python3 -Requires: policycoreutils-python3 -Requires: procps -Requires: python3-configobj +Requires: e2fsprogs +Requires: iproute +Requires: libselinux-python3 +Requires: policycoreutils-python3 +Requires: procps +Requires: python3-configobj # https://bugzilla.redhat.com/show_bug.cgi?id=1695953 -Requires: python3-distro -Requires: python3-jinja2 -Requires: python3-jsonpatch -Requires: python3-oauthlib -Requires: python3-prettytable -Requires: python3-pyserial -Requires: python3-PyYAML -Requires: python3-requests -Requires: python3-six -Requires: shadow-utils -Requires: util-linux -Requires: xfsprogs -Requires: dhcp-client +Requires: python3-distro +Requires: python3-jinja2 +Requires: python3-jsonpatch +Requires: python3-oauthlib +Requires: python3-prettytable +Requires: python3-pyserial +Requires: python3-PyYAML +Requires: python3-requests +Requires: python3-six +Requires: shadow-utils +Requires: util-linux +Requires: xfsprogs +Requires: dhcp-client # https://bugzilla.redhat.com/show_bug.cgi?id=2032524 -Requires: gdisk -Requires: openssl -Requires: python3-netifaces +Requires: gdisk +Requires: openssl +Requires: python3-netifaces %{?systemd_requires} @@ -295,27 +298,41 @@ fi %config(noreplace) %{_sysconfdir}/rsyslog.d/21-cloudinit.conf %changelog -* Mon Dec 23 2024 Eduard Abdullin - 23.4-19.el9_5.4.alma.1 -- Fix import error for passlib on Python 3.13 - (#4669) -- Fix metric setting for ifcfg network connections for rhel - (#5777) -- fix: Render bridges correctly for v2 on sysconfig with - set-name (#5674) -- fix: Render v2 bridges correctly on network-manager with - set-name (#5740) -- Prevent NM from handling DNS when network interfaces have DNS - config (#5846) -- refactor: Ensure internal DNS state same for v1 and v2 - (#4756) - -* Mon Sep 30 2024 Elkhan Mammadli - 23.4-19.alma.1 +* Tue Mar 25 2025 Elkhan Mammadli - 23.4-19.5.alma.1 - 0031-Improvements-for-AlmaLinux-OS-and-CloudLinux-OS.patch +* Mon Feb 24 2025 Jon Maloy - 23.4-19.el9_5.5 +- ci-fix-nocloud-smbios-datasource-definition.patch [RHEL-79774] +- Resolves: RHEL-79774 + ([RHEL 9] Backport support for smbios datasource definition [rhel-9.5.z]) + +* Wed Nov 27 2024 Miroslav Rezanina - 23.4-19.el9_5.4 +- ci-refactor-Ensure-internal-DNS-state-same-for-v1-and-v.patch [RHEL-68409] +- Resolves: RHEL-68409 + (cloud-init fails to configure DNS and search domain [rhel-9.5.z]) + +* Mon Nov 18 2024 Miroslav Rezanina - 23.4-19.el9_5.3 +- ci-Prevent-NM-from-handling-DNS-when-network-interfaces.patch [RHEL-65778] +- Resolves: RHEL-65778 + ([RHEL-9] Prevent NM from handling DNS when network interfaces have DNS config [rhel-9.5.z]) + +* Wed Nov 06 2024 Miroslav Rezanina - 23.4-19.el9_5.2 +- ci-fix-Render-bridges-correctly-for-v2-on-sysconfig-wit.patch [RHEL-65021] +- ci-fix-Render-v2-bridges-correctly-on-network-manager-w.patch [RHEL-65021] +- Resolves: RHEL-65021 + (NoCloud - network_config bridges incorrectly configured [rhel-9.5.z]) + +* Thu Oct 31 2024 Miroslav Rezanina - 23.4-19.el9_5.1 +- ci-Fix-metric-setting-for-ifcfg-network-connections-for.patch [RHEL-65018] +- ci-fix-python3.13-Fix-import-error-for-passlib-on-Pytho.patch [RHEL-65018] +- Resolves: RHEL-65018 + (Configuring metric for default gateway is not working [rhel-9.5.z]) + * Mon Aug 26 2024 Miroslav Rezanina - 23.4-19 - ci-fix-Add-subnet-ipv4-ipv6-to-network-schema-5191.patch [RHEL-54686] - Resolves: RHEL-54686 ([RHEL-9.5] cloud-init schema validation fails.) + * Mon Aug 19 2024 Miroslav Rezanina - 23.4-18 - ci-Revert-fix-vmware-Set-IPv6-to-dhcp-when-there-is-no-.patch [RHEL-54373] - Resolves: RHEL-54373 @@ -805,7 +822,7 @@ fi * Thu Apr 13 2017 Charalampos Stratakis 0.7.9-4 - Import to RHEL 7 -Resolves: rhbz#1427280 +Resolves: rhbz#1427280 * Tue Mar 07 2017 Lars Kellogg-Stedman 0.7.9-3 - fixes for network config generation