From 5ddab47951825e2bb2f240d3d11f68f769f254bbeda9ef9b61fd52aed8b52fd7 Mon Sep 17 00:00:00 2001 From: Robert Schweikert Date: Thu, 23 Feb 2023 19:19:22 +0000 Subject: [PATCH] =?UTF-8?q?-=20Update=20to=20version=2023.1=20=20=20+=20Re?= =?UTF-8?q?move=20patches=20included=20upstream:=20=20=20=20=20-=20cloud-i?= =?UTF-8?q?nit-btrfs-queue-resize.patch=20=20=20=20=20-=20cloud-init-micro?= =?UTF-8?q?-is-suse.patch=20=20=20=20=20-=20cloud-init-suse-afternm.patch?= =?UTF-8?q?=20=20=20=20=20-=20cloud-init-prefer-nm.patch=20=20=20=20=20-?= =?UTF-8?q?=20cloud-init-transact-up.patch=20=20=20+=20Forward=20port=20?= =?UTF-8?q?=20=20=20=20-=20cloud-init-write-routes.patch=20=20=20+=20Added?= =?UTF-8?q?=20=20=20=20=20-=20cloud-init-fix-ca-test.patch=20=20=20+=20Sup?= =?UTF-8?q?port=20transactional-updates=20for=20SUSE=20based=20distros=20(?= =?UTF-8?q?#1997)=20=20=20=20=20[Robert=20Schweikert]=20=20=20+=20Set=20ow?= =?UTF-8?q?nership=20for=20new=20folders=20in=20Write=20Files=20Module=20(?= =?UTF-8?q?#1980)=20=20=20=20=20[Jack]=20(LP:=20#1990513)=20=20=20+=20add?= =?UTF-8?q?=20OpenCloudOS=20and=20TencentOS=20support=20(#1964)=20[wynnfen?= =?UTF-8?q?g]=20=20=20+=20lxd:=20Retry=20if=20the=20server=20isn't=20ready?= =?UTF-8?q?=20(#2025)=20=20=20+=20test:=20switch=20pycloudlib=20source=20t?= =?UTF-8?q?o=20pypi=20(#2024)=20=20=20+=20test:=20Fix=20integration=20test?= =?UTF-8?q?=20deprecation=20message=20(#2023)=20=20=20+=20Recognize=20open?= =?UTF-8?q?suse-microos,=20dev=20tooling=20fixes=20[Robert=20Schweikert]?= =?UTF-8?q?=20=20=20+=20sources/azure:=20refactor=20imds=20handler=20into?= =?UTF-8?q?=20own=20module=20(#1977)=20=20=20=20=20[Chris=20Patterson]=20?= =?UTF-8?q?=20=20+=20docs:=20deprecation=20generation=20support=20[1/2]=20?= =?UTF-8?q?(#2013)=20=20=20+=20add=20function=20is=5Fvirtual=20to=20distro?= =?UTF-8?q?/FreeBSD=20(#1957)=20[Mina=20Gali=C4=87]=20=20=20+=20cc=5Fssh:?= =?UTF-8?q?=20support=20multiple=20hostcertificates=20(#2018)=20(LP:=20#19?= =?UTF-8?q?99164)=20=20=20+=20Fix=20minor=20schema=20validation=20regressi?= =?UTF-8?q?on=20and=20fixup=20typing=20(#2017)=20=20=20+=20doc:=20Reword?= =?UTF-8?q?=20user=20data=20debug=20section=20(#2019)=20=20=20+=20Overhaul?= =?UTF-8?q?/rewrite=20of=20certificate=20handling=20as=20follows:=20(#1962?= =?UTF-8?q?)=20=20=20=20=20[dermotbradley]=20(LP:=20#1931174)=20=20=20+=20?= =?UTF-8?q?disk=5Fsetup:=20use=20byte=20string=20when=20purging=20the=20pa?= =?UTF-8?q?rtition=20table=20(#2012)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=203 --- cloud-init-22.4.tar.gz | 3 - cloud-init-23.1.tar.gz | 3 + cloud-init-btrfs-queue-resize.patch | 84 -------------- cloud-init-fix-ca-test.patch | 18 +++ cloud-init-micro-is-suse.patch | 21 ---- cloud-init-prefer-nm.patch | 36 ------ cloud-init-suse-afternm.patch | 11 -- cloud-init-transact-up.patch | 65 ----------- cloud-init-write-routes.patch | 21 +--- cloud-init.changes | 171 ++++++++++++++++++++++++++++ cloud-init.spec | 35 ++---- 11 files changed, 203 insertions(+), 265 deletions(-) delete mode 100644 cloud-init-22.4.tar.gz create mode 100644 cloud-init-23.1.tar.gz delete mode 100644 cloud-init-btrfs-queue-resize.patch create mode 100644 cloud-init-fix-ca-test.patch delete mode 100644 cloud-init-micro-is-suse.patch delete mode 100644 cloud-init-prefer-nm.patch delete mode 100644 cloud-init-suse-afternm.patch delete mode 100644 cloud-init-transact-up.patch diff --git a/cloud-init-22.4.tar.gz b/cloud-init-22.4.tar.gz deleted file mode 100644 index 62e71ac..0000000 --- a/cloud-init-22.4.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:caf39e956b719c7501b83e100198f0629849a3309c45af318748f68d48296400 -size 1510191 diff --git a/cloud-init-23.1.tar.gz b/cloud-init-23.1.tar.gz new file mode 100644 index 0000000..4c729b5 --- /dev/null +++ b/cloud-init-23.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d6a13210c9fc82c82e471c335de9fbb53ccd63ac92c1d1c462a6e5c8e992ebc +size 1540625 diff --git a/cloud-init-btrfs-queue-resize.patch b/cloud-init-btrfs-queue-resize.patch deleted file mode 100644 index 3173608..0000000 --- a/cloud-init-btrfs-queue-resize.patch +++ /dev/null @@ -1,84 +0,0 @@ ---- cloudinit/config/cc_resizefs.py.orig -+++ cloudinit/config/cc_resizefs.py -@@ -60,15 +60,28 @@ def _resize_btrfs(mount_point, devpth): - if not util.mount_is_read_write(mount_point) and os.path.isdir( - "%s/.snapshots" % mount_point - ): -- return ( -+ cmd = [ - "btrfs", - "filesystem", - "resize", - "max", - "%s/.snapshots" % mount_point, -- ) -+ ] - else: -- return ("btrfs", "filesystem", "resize", "max", mount_point) -+ cmd = ["btrfs", "filesystem", "resize", "max", mount_point] -+ -+ # btrfs has exclusive operations and resize may fail if btrfs is busy -+ # doing one of the operations that prevents resize. As of btrfs 5.10 -+ # the resize operation can be queued -+ btrfs_with_queue = util.Version().from_str("5.10") -+ system_btrfs_ver = util.Version().from_str( -+ subp.subp(["btrfs", "--version"])[0].split("v")[-1].strip() -+ ) -+ if system_btrfs_ver >= btrfs_with_queue: -+ idx = cmd.index("resize") -+ cmd.insert(idx + 1, "--enqueue") -+ -+ return tuple(cmd) - - - def _resize_ext(mount_point, devpth): ---- tests/unittests/config/test_cc_resizefs.py.orig -+++ tests/unittests/config/test_cc_resizefs.py -@@ -444,10 +444,12 @@ class TestMaybeGetDevicePathAsWritableBl - - @mock.patch("cloudinit.util.mount_is_read_write") - @mock.patch("cloudinit.config.cc_resizefs.os.path.isdir") -- def test_resize_btrfs_mount_is_ro(self, m_is_dir, m_is_rw): -+ @mock.patch("cloudinit.subp.subp") -+ def test_resize_btrfs_mount_is_ro(self, m_subp, m_is_dir, m_is_rw): - """Do not resize / directly if it is read-only. (LP: #1734787).""" - m_is_rw.return_value = False - m_is_dir.return_value = True -+ m_subp.return_value = ("btrfs-progs v4.19 \n", "") - self.assertEqual( - ("btrfs", "filesystem", "resize", "max", "//.snapshots"), - _resize_btrfs("/", "/dev/sda1"), -@@ -455,15 +457,32 @@ class TestMaybeGetDevicePathAsWritableBl - - @mock.patch("cloudinit.util.mount_is_read_write") - @mock.patch("cloudinit.config.cc_resizefs.os.path.isdir") -- def test_resize_btrfs_mount_is_rw(self, m_is_dir, m_is_rw): -+ @mock.patch("cloudinit.subp.subp") -+ def test_resize_btrfs_mount_is_rw(self, m_subp, m_is_dir, m_is_rw): - """Do not resize / directly if it is read-only. (LP: #1734787).""" - m_is_rw.return_value = True - m_is_dir.return_value = True -+ m_subp.return_value = ("btrfs-progs v4.19 \n", "") - self.assertEqual( - ("btrfs", "filesystem", "resize", "max", "/"), - _resize_btrfs("/", "/dev/sda1"), - ) - -+ @mock.patch("cloudinit.util.mount_is_read_write") -+ @mock.patch("cloudinit.config.cc_resizefs.os.path.isdir") -+ @mock.patch("cloudinit.subp.subp") -+ def test_resize_btrfs_mount_is_rw_has_queue( -+ self, m_subp, m_is_dir, m_is_rw -+ ): -+ """Queue the resize request if btrfs >= 5.10""" -+ m_is_rw.return_value = True -+ m_is_dir.return_value = True -+ m_subp.return_value = ("btrfs-progs v5.10 \n", "") -+ self.assertEqual( -+ ("btrfs", "filesystem", "resize", "--enqueue", "max", "/"), -+ _resize_btrfs("/", "/dev/sda1"), -+ ) -+ - @mock.patch("cloudinit.util.is_container", return_value=True) - @mock.patch("cloudinit.util.is_FreeBSD") - def test_maybe_get_writable_device_path_zfs_freebsd( diff --git a/cloud-init-fix-ca-test.patch b/cloud-init-fix-ca-test.patch new file mode 100644 index 0000000..5b80605 --- /dev/null +++ b/cloud-init-fix-ca-test.patch @@ -0,0 +1,18 @@ +--- tests/unittests/config/test_cc_ca_certs.py.orig ++++ tests/unittests/config/test_cc_ca_certs.py +@@ -311,6 +311,7 @@ class TestRemoveDefaultCaCerts(TestCase) + "cloud_dir": tmpdir, + } + ) ++ self.add_patch("cloudinit.config.cc_ca_certs.os.stat", "m_stat") + + def test_commands(self): + ca_certs_content = "# line1\nline2\nline3\n" +@@ -318,6 +319,7 @@ class TestRemoveDefaultCaCerts(TestCase) + "# line1\n# Modified by cloud-init to deselect certs due to" + " user-data\n!line2\n!line3\n" + ) ++ self.m_stat.return_value.st_size = 1 + + for distro_name in cc_ca_certs.distros: + conf = cc_ca_certs._distro_ca_certs_configs(distro_name) diff --git a/cloud-init-micro-is-suse.patch b/cloud-init-micro-is-suse.patch deleted file mode 100644 index 283923a..0000000 --- a/cloud-init-micro-is-suse.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- cloudinit/distros/__init__.py.orig -+++ cloudinit/distros/__init__.py -@@ -64,7 +64,7 @@ OSFAMILIES = { - "rocky", - "virtuozzo", - ], -- "suse": ["opensuse", "sles"], -+ "suse": ["opensuse", "sles", "opensuse-microos"], - } - - LOG = logging.getLogger(__name__) ---- cloudinit/util.py.orig -+++ cloudinit/util.py -@@ -653,6 +653,7 @@ def _get_variant(info): - variant = "rhel" - elif linux_dist in ( - "opensuse", -+ "opensuse-microos", - "opensuse-tumbleweed", - "opensuse-leap", - "sles", diff --git a/cloud-init-prefer-nm.patch b/cloud-init-prefer-nm.patch deleted file mode 100644 index 667eaad..0000000 --- a/cloud-init-prefer-nm.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- cloudinit/net/renderers.py.orig -+++ cloudinit/net/renderers.py -@@ -27,10 +27,10 @@ NAME_TO_RENDERER = { - } - - DEFAULT_PRIORITY = [ -- "eni", -- "sysconfig", - "netplan", - "network-manager", -+ "eni", -+ "sysconfig", - "freebsd", - "netbsd", - "openbsd", ---- tests/unittests/test_net.py.orig -+++ tests/unittests/test_net.py -@@ -7356,15 +7356,15 @@ class TestRenderersSelect: - # -netplan +ifupdown -sys -nm -networkd selects eni - ("eni", False, True, False, False, False), - # +netplan +ifupdown -sys -nm -networkd selects eni -- ("eni", True, True, False, False, False), -+ ("netplan", True, True, False, False, False), - # +netplan -ifupdown -sys -nm -networkd selects netplan - ("netplan", True, False, False, False, False), - # +netplan -ifupdown -sys -nm -networkd selects netplan - ("netplan", True, False, False, False, False), - # -netplan -ifupdown +sys -nm -networkd selects sysconfig - ("sysconfig", False, False, True, False, False), -- # -netplan -ifupdown +sys +nm -networkd selects sysconfig -- ("sysconfig", False, False, True, True, False), -+ # -netplan -ifupdown +sys +nm -networkd selects network-manager -+ ("network-manager", False, False, True, True, False), - # -netplan -ifupdown -sys +nm -networkd selects nm - ("network-manager", False, False, False, True, False), - # -netplan -ifupdown -sys +nm +networkd selects nm diff --git a/cloud-init-suse-afternm.patch b/cloud-init-suse-afternm.patch deleted file mode 100644 index a301b1c..0000000 --- a/cloud-init-suse-afternm.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- systemd/cloud-init.service.tmpl.orig -+++ systemd/cloud-init.service.tmpl -@@ -19,6 +19,8 @@ After=NetworkManager.service - {% endif %} - {% if variant in ["suse"] %} - After=wicked.service -+After=NetworkManager.service -+After=NetworkManager-wait-online.service - # setting hostname via hostnamectl depends on dbus, which otherwise - # would not be guaranteed at this point. - After=dbus.service diff --git a/cloud-init-transact-up.patch b/cloud-init-transact-up.patch deleted file mode 100644 index f435124..0000000 --- a/cloud-init-transact-up.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- cloudinit/distros/opensuse.py.orig -+++ cloudinit/distros/opensuse.py -@@ -9,6 +9,7 @@ - # This file is part of cloud-init. See LICENSE file for license information. - - import logging -+import os - - from cloudinit import distros, helpers, subp, util - from cloudinit.distros import rhel_util as rhutil -@@ -49,6 +50,7 @@ class Distro(distros.Distro): - distros.Distro.__init__(self, name, cfg, paths) - self._runner = helpers.Runners(paths) - self.osfamily = "suse" -+ self.update_method = None - cfg["ssh_svcname"] = "sshd" - if self.uses_systemd(): - self.init_cmd = ["systemctl"] -@@ -74,12 +76,45 @@ class Distro(distros.Distro): - if pkgs is None: - pkgs = [] - -+ if self.update_method == None: -+ result = util.get_mount_info("/") -+ fs_type = "" -+ if result: -+ (devpth, fs_type, mount_point) = result -+ if ( -+ fs_type.lower() == 'btrfs' and -+ os.path.exists("/usr/sbin/transactional-update") -+ ): -+ self.update_method = 'transactional' -+ else: -+ self.update_method = 'zypper' -+ else: -+ LOG.info( -+ "Could not determine filesystem type of '/' using zypper" -+ ) -+ self.update_method = 'zypper' -+ - # No user interaction possible, enable non-interactive mode -- cmd = ["zypper", "--non-interactive"] -+ if self.update_method == 'zypper': -+ cmd = ["zypper", "--non-interactive"] -+ else: -+ cmd = [ -+ "transactional-update", -+ "--non-interactive", -+ "--drop-if-no-change", -+ "pkg" -+ ] - - # Command is the operation, such as install - if command == "upgrade": - command = "update" -+ if self.update_method == 'transactional' and not pkgs: -+ command = "up" -+ cmd = [ -+ "transactional-update", -+ "--non-interactive", -+ "--drop-if-no-change" -+ ] - cmd.append(command) - - # args are the arguments to the command, not global options diff --git a/cloud-init-write-routes.patch b/cloud-init-write-routes.patch index be787a8..f95cdfa 100644 --- a/cloud-init-write-routes.patch +++ b/cloud-init-write-routes.patch @@ -1,6 +1,6 @@ --- cloudinit/distros/__init__.py.orig +++ cloudinit/distros/__init__.py -@@ -267,6 +267,15 @@ class Distro(persistence.CloudInitPickle +@@ -276,6 +276,15 @@ class Distro(persistence.CloudInitPickle network_state = parse_net_config_data(netconfig, renderer=renderer) self._write_network_state(network_state, renderer) @@ -18,24 +18,7 @@ if bring_up: --- cloudinit/distros/opensuse.py.orig +++ cloudinit/distros/opensuse.py -@@ -8,11 +8,16 @@ - # - # This file is part of cloud-init. See LICENSE file for license information. - -+import logging -+ - from cloudinit import distros, helpers, subp, util - from cloudinit.distros import rhel_util as rhutil - from cloudinit.distros.parsers.hostname import HostnameConf -+from cloudinit.net import ipv4_mask_to_net_prefix - from cloudinit.settings import PER_INSTANCE - -+LOG = logging.getLogger(__name__) -+ - - class Distro(distros.Distro): - clock_conf_fn = "/etc/sysconfig/clock" -@@ -165,6 +170,143 @@ class Distro(distros.Distro): +@@ -238,6 +238,143 @@ class Distro(distros.Distro): conf.set_hostname(hostname) util.write_file(filename, str(conf), 0o644) diff --git a/cloud-init.changes b/cloud-init.changes index 9e66cef..7a24dae 100644 --- a/cloud-init.changes +++ b/cloud-init.changes @@ -1,3 +1,173 @@ +------------------------------------------------------------------- +Thu Feb 23 13:38:43 UTC 2023 - Robert Schweikert + +- Update to version 23.1 + + Remove patches included upstream: + - cloud-init-btrfs-queue-resize.patch + - cloud-init-micro-is-suse.patch + - cloud-init-suse-afternm.patch + - cloud-init-prefer-nm.patch + - cloud-init-transact-up.patch + + Forward port + - cloud-init-write-routes.patch + + Added + - cloud-init-fix-ca-test.patch + + Support transactional-updates for SUSE based distros (#1997) + [Robert Schweikert] + + Set ownership for new folders in Write Files Module (#1980) + [Jack] (LP: #1990513) + + add OpenCloudOS and TencentOS support (#1964) [wynnfeng] + + lxd: Retry if the server isn't ready (#2025) + + test: switch pycloudlib source to pypi (#2024) + + test: Fix integration test deprecation message (#2023) + + Recognize opensuse-microos, dev tooling fixes [Robert Schweikert] + + sources/azure: refactor imds handler into own module (#1977) + [Chris Patterson] + + docs: deprecation generation support [1/2] (#2013) + + add function is_virtual to distro/FreeBSD (#1957) [Mina Galić] + + cc_ssh: support multiple hostcertificates (#2018) (LP: #1999164) + + Fix minor schema validation regression and fixup typing (#2017) + + doc: Reword user data debug section (#2019) + + Overhaul/rewrite of certificate handling as follows: (#1962) + [dermotbradley] (LP: #1931174) + + disk_setup: use byte string when purging the partition table (#2012) + [Stefan Prietl] + + cli: schema also validate vendordata*. + + ci: sort and add checks for cla signers file [Stefan Prietl] + + Add "ederst" as contributor (#2010) [Stefan Prietl] + + readme: add reference to packages dir (#2001) + + docs: update downstream package list (#2002) + + docs: add google search verification (#2000) [s-makin] + + docs: fix 404 render use default notfound_urls_prefix in RTD conf (#2004) + + Fix OpenStack datasource detection on bare metal (#1923) + [Alexander Birkner] (LP: #1815990) + + docs: add themed RTD 404 page and pointer to readthedocs-hosted (#1993) + + schema: fix gpt labels, use type string for GUID (#1995) + + cc_disk_setup: code cleanup (#1996) + + netplan: keep custom strict perms when 50-cloud-init.yaml exists + + cloud-id: better handling of change in datasource files + [d1r3ct0r] (LP: #1998998) + + tests: Remove restart check from test + + Ignore duplicate macs from mscc_felix and fsl_enetc (LP: #1997922) + + Warn on empty network key (#1990) + + Fix Vultr cloud_interfaces usage (#1986) [eb3095] + + cc_puppet: Update puppet service name (#1970) [d1r3ct0r] (LP: #2002969) + + docs: Clarify networking docs (#1987) + + lint: remove httpretty (#1985) [sxt1001] + + cc_set_passwords: Prevent traceback when restarting ssh (#1981) + + tests: fix lp1912844 (#1978) + + tests: Skip ansible test on bionic (#1984) + + Wait for NetworkManager (#1983) [Robert Schweikert] + + docs: minor polishing (#1979) [s-makin] + + CI: migrate integration-test to GH actions (#1969) + + Fix permission of SSH host keys (#1971) [Ron Gebauer] + + Fix default route rendering on v2 ipv6 (#1973) (LP: #2003562) + + doc: fix path in net_convert command (#1975) + + docs: update net_convert docs (#1974) + + doc: fix dead link + + cc_set_hostname: ignore /var/lib/cloud/data/set-hostname if it's empty + (#1967) [Emanuele Giuseppe Esposito] + + distros/rhel.py: _read_hostname() missing strip on "hostname" (#1941) + [Mark Mielke] + + integration tests: add IBM VPC support (SC-1352) (#1915) + + machine-id: set to uninitialized to trigger regeneration on clones + (LP: #1999680) + + sources/azure: retry on connection error when fetching metdata (#1968) + [Chris Patterson] + + Ensure ssh state accurately obtained (#1966) + + bddeb: drop dh-systemd dependency on newer deb-based releases [d1r3ct0r] + + doc: fix `config formats` link in cloudsigma.rst (#1960) + + Fix wrong subp syntax in cc_set_passwords.py (#1961) + + docs: update the PR template link to readthedocs (#1958) [d1r3ct0r] + + ci: switch unittests to gh actions (#1956) + + Add mount_default_fields for PhotonOS. (#1952) [Shreenidhi Shedi] + + sources/azure: minor refactor for metadata source detection logic + (#1936) [Chris Patterson] + + add "CalvoM" as contributor (#1955) [d1r3ct0r] + + ci: doc to gh actions (#1951) + + lxd: handle 404 from missing devices route for LXD 4.0 (LP: #2001737) + + docs: Diataxis overhaul (#1933) [s-makin] + + vultr: Fix issue regarding cache and region codes (#1938) [eb3095] + + cc_set_passwords: Move ssh status checking later (SC-1368) (#1909) + (LP: #1998526) + + Improve Wireguard module idempotency (#1940) [Fabian Lichtenegger-Lukas] + + network/netplan: add gateways as on-link when necessary (#1931) + [Louis Sautier] (LP: #2000596) + + tests: test_lxd assert features.networks.zones when present (#1939) + + Use btrfs enquque when available (#1926) [Robert Schweikert] + + sources/azure: drop description for report_failure_to_fabric() (#1934) + [Chris Patterson] + + cc_disk_setup.py: fix MBR single partition creation (#1932) + [dermotbradley] (LP: #1851438) + + Fix typo with package_update/package_upgrade (#1927) [eb3095] + + sources/azure: fix device driver matching for net config (#1914) + [Chris Patterson] + + BSD: fix duplicate macs in Ifconfig parser (#1917) [Mina Galić] + + test: mock dns calls (#1922) + + pycloudlib: add lunar support for integration tests (#1928) + + nocloud: add support for dmi variable expansion for seedfrom URL + (LP: #1994980) + + tools: read-version drop extra call to git describe --long + + doc: improve cc_write_files doc (#1916) + + read-version: When insufficient tags, use cloudinit.version.get_version + + mounts: document weird prefix in schema (#1913) + + add utility function test cases (#1910) [sxt1001] + + test: mock file deletion in dhcp tests (#1911) + + Ensure network ready before cloud-init service runs on RHEL (#1893) + (LP: #1998655) + + docs: add copy button to code blocks (#1890) [s-makin] + + netplan: define features.NETPLAN_CONFIG_ROOT_READ_ONLY flag + + azure: fix support for systems without az command installed (#1908) + + Networking Clarification (#1892) + + Fix the distro.osfamily output problem in the openEuler system. (#1895) + [sxt1001] (LP: #1999042) + + pycloudlib: bump commit dropping azure api smoke test + + net: netplan config root read-only as wifi config can contain creds + + autoinstall: clarify docs for users + + sources/azure: encode health report as utf-8 (#1897) [Chris Patterson] + + Add back gateway4/6 deprecation to docs (#1898) + + networkd: Add support for multiple [Route] sections (#1868) + [Nigel Kukard] + + doc: add qemu tutorial (#1863) + + lint: fix tip-flake8 and tip-mypy (#1896) + + Add support for setting uid when creating users on FreeBSD (#1888) + [einsibjarni] + + Fix exception in BSD networking code-path (#1894) [Mina Galić] + + Append derivatives to is_rhel list in cloud.cfg.tmpl (#1887) [Louis Abel] + + FreeBSD init: use cloudinit_enable as only rcvar (#1875) [Mina Galić] + + feat: add support aliyun metadata security harden mode (#1865) + [Manasseh Zhou] + + docs: uprate analyze to performance page [s-makin] + + test: fix lxd preseed managed network config (#1881) + + Add support for static IPv6 addresses for FreeBSD (#1839) [einsibjarni] + + Make 3.12 failures not fail the build (#1873) + + Docs: adding relative links [s-makin] + + Update read-version + + Fix setup.py to align with PEP 440 versioning replacing trailing + + travis: promote 3.11-dev to 3.11 (#1866) + + test_cloud_sigma: delete useless test (#1828) [sxt1001] + + Add "nkukard" as contributor (#1864) [Nigel Kukard] + + tests: ds-id mocks for vmware-rpctool as utility may not exist in env + + doc: add how to render new module doc (#1855) + + doc: improve module creation explanation (#1851) + + Add Support for IPv6 metadata to OpenStack (#1805) + [Marvin Vogt] (LP: #1906849) + + add xiaoge1001 to .github-cla-signers (#1854) [sxt1001] + + network: Deprecate gateway{4,6} keys in network config v2 (#1794) + (LP: #1992512) + + VMware: Move Guest Customization transport from OVF to VMware (#1573) + [PengpengSun] + + doc: home page links added (#1852) [s-makin] + +From 22.4.2 + + status: handle ds not defined in status.json (#1876) (LP: #1997559) + +From 22.4.1 + + net: skip duplicate mac check for netvsc nic and its VF (#1853) + [Anh Vo] (LP: #1844191) + + ChangeLog: whitespace cleanup (#1850) + + changelog: capture 22.3.1-4 releases + ------------------------------------------------------------------- Fri Feb 3 22:02:32 UTC 2023 - Robert Schweikert @@ -10,6 +180,7 @@ Tue Jan 31 19:47:23 UTC 2023 - Robert Schweikert + Prefer NetworkManager of sysconfig when available ------------------------------------------------------------------- +>>>>>>> ./cloud-init.changes.new Thu Dec 22 18:10:45 UTC 2022 - Robert Schweikert - Update to version 22.4 diff --git a/cloud-init.spec b/cloud-init.spec index f785036..daf5604 100644 --- a/cloud-init.spec +++ b/cloud-init.spec @@ -18,7 +18,7 @@ %global configver 0.7 Name: cloud-init -Version: 22.4 +Version: 23.1 Release: 0 License: GPL-3.0 Summary: Cloud node initialization tool @@ -27,24 +27,16 @@ Group: System/Management Source0: %{name}-%{version}.tar.gz Source1: rsyslog-cloud-init.cfg Patch1: datasourceLocalDisk.patch -# FIXME (lp#1812117) -Patch2: cloud-init-write-routes.patch # FIXME (lp#1849296) -Patch3: cloud-init-break-resolv-symlink.patch +Patch2: cloud-init-break-resolv-symlink.patch # FIXME no proposed solution -Patch4: cloud-init-sysconf-path.patch +Patch3: cloud-init-sysconf-path.patch # FIXME (lp#1860164) -Patch5: cloud-init-no-tempnet-oci.patch -# FIXME https://github.com/canonical/cloud-init/pull/1926 -Patch6: cloud-init-btrfs-queue-resize.patch -# FIXME https://github.com/canonical/cloud-init/pull/1982 -Patch7: cloud-init-micro-is-suse.patch -# FIXME https://github.com/canonical/cloud-init/pull/1983 -Patch8: cloud-init-suse-afternm.patch -# FIXME: https://github.com/canonical/cloud-init/pull/1435 -Patch9: cloud-init-prefer-nm.patch -# FIXME: https://github.com/canonical/cloud-init/pull/1997 -Patch10: cloud-init-transact-up.patch +Patch4: cloud-init-no-tempnet-oci.patch +# FIXME https://github.com/canonical/cloud-init/pull/2036 +Patch5: cloud-init-fix-ca-test.patch +# FIXME (lp#1812117) +Patch6: cloud-init-write-routes.patch BuildRequires: fdupes BuildRequires: filesystem # pkg-config is needed to find correct systemd unit dir @@ -151,11 +143,6 @@ Documentation and examples for cloud-init tools %patch4 %patch5 %patch6 -%patch7 -%patch8 -%patch9 -%patch10 - # patch in the full version to version.py version_pys=$(find . -name version.py -type f) @@ -234,7 +221,7 @@ rm %{buildroot}/%{_sysconfdir}/cloud/templates/*.ubuntu.* %endif %{_datadir}/bash-completion/completions/cloud-init %{python3_sitelib}/cloudinit -%{python3_sitelib}/cloud_init-%{version}-py%{py3_ver}.egg-info +%{python3_sitelib}/cloud_init-%{version}*.egg-info %{_prefix}/lib/cloud-init %{systemd_prefix}/systemd/system-generators/cloud-init-generator %{systemd_prefix}/systemd/system/cloud-config.service @@ -268,8 +255,4 @@ rm %{buildroot}/%{_sysconfdir}/cloud/templates/*.ubuntu.* %{docdir}/*.txt %dir %{docdir}/examples -#%files test -#%defattr(-,root,root) -#%{python_sitelib}/tests - %changelog