From 7c0ea21f803f41818aef7d278c03552797cb9962 Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Wed, 3 Jul 2024 03:17:08 +0300 Subject: [PATCH] import nmstate-1.4.6-2.el8_10 --- .gitignore | 4 +- .nmstate.metadata | 4 +- ...0001-clib-Use-build.rs-to-fix-SONAME.patch | 60 +++++++ SOURCES/RHEL-13992-dns-opt-fix.patch | 157 ------------------ SOURCES/nmstate-1.4.5.tar.gz.asc | 16 -- SOURCES/nmstate-1.4.6.tar.gz.asc | 16 ++ SOURCES/nmstate.gpg | 50 +++++- SPECS/nmstate.spec | 33 ++-- 8 files changed, 145 insertions(+), 195 deletions(-) create mode 100644 SOURCES/0001-clib-Use-build.rs-to-fix-SONAME.patch delete mode 100644 SOURCES/RHEL-13992-dns-opt-fix.patch delete mode 100644 SOURCES/nmstate-1.4.5.tar.gz.asc create mode 100644 SOURCES/nmstate-1.4.6.tar.gz.asc diff --git a/.gitignore b/.gitignore index c458948..8eccf98 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/nmstate-1.4.5.tar.gz -SOURCES/nmstate-vendor-1.4.5.tar.xz +SOURCES/nmstate-1.4.6.tar.gz +SOURCES/nmstate-vendor-1.4.6.tar.xz diff --git a/.nmstate.metadata b/.nmstate.metadata index 8630de5..bb307a9 100644 --- a/.nmstate.metadata +++ b/.nmstate.metadata @@ -1,2 +1,2 @@ -cd4f8e938eabaf7e70fb251c06e477ba3bc9d8c8 SOURCES/nmstate-1.4.5.tar.gz -4735ef08c31684624a7844832cc2ba20e67983f6 SOURCES/nmstate-vendor-1.4.5.tar.xz +2c5d46ae03fe2d836e165aa3562f03386d215fdf SOURCES/nmstate-1.4.6.tar.gz +4735ef08c31684624a7844832cc2ba20e67983f6 SOURCES/nmstate-vendor-1.4.6.tar.xz diff --git a/SOURCES/0001-clib-Use-build.rs-to-fix-SONAME.patch b/SOURCES/0001-clib-Use-build.rs-to-fix-SONAME.patch new file mode 100644 index 0000000..69aecc3 --- /dev/null +++ b/SOURCES/0001-clib-Use-build.rs-to-fix-SONAME.patch @@ -0,0 +1,60 @@ +From 0b530d4c8e75f60015d13c225b1c634389fbe798 Mon Sep 17 00:00:00 2001 +From: Gris Ge +Date: Fri, 17 May 2024 13:12:14 +0800 +Subject: [PATCH] clib: Use build.rs to fix SONAME + +Use [`cargo:rustc-cdylib-link-arg`][1] to `build.rs` to fix the SONAME issue +of cargo. + +Removed workarounds in rpm spec and `.cargo/config.toml`. + +Changed Makefile to place `-lnmstate` after the source file to fix +compile issue on ubuntu 20.04 old gcc. + +[1]: https://doc.rust-lang.org/cargo/reference/build-scripts.html#rustc-cdylib-link-arg + +Signed-off-by: Gris Ge +--- + rust/.cargo/config.toml | 3 --- + rust/src/clib/Cargo.toml | 1 + + rust/src/clib/build.rs | 6 ++++++ + 3 files changed, 7 insertions(+), 3 deletions(-) + create mode 100644 rust/src/clib/build.rs + +diff --git a/rust/.cargo/config.toml b/rust/.cargo/config.toml +index 018e59d4..ca6c72f7 100644 +--- a/rust/.cargo/config.toml ++++ b/rust/.cargo/config.toml +@@ -1,5 +1,2 @@ +-[build] +-rustflags = "-Clink-arg=-Wl,-soname=libnmstate.so.1" +- + [target.x86_64-unknown-linux-gnu] + runner = 'sudo -E' +diff --git a/rust/src/clib/Cargo.toml b/rust/src/clib/Cargo.toml +index 462757ca..0eb00922 100644 +--- a/rust/src/clib/Cargo.toml ++++ b/rust/src/clib/Cargo.toml +@@ -6,6 +6,7 @@ authors = ["Gris Ge "] + license = "Apache-2.0" + edition = "2018" + rust-version = "1.58" ++build = "build.rs" + + [lib] + name = "nmstate" +diff --git a/rust/src/clib/build.rs b/rust/src/clib/build.rs +new file mode 100644 +index 00000000..74ad7e48 +--- /dev/null ++++ b/rust/src/clib/build.rs +@@ -0,0 +1,6 @@ ++// SPDX-License-Identifier: Apache-2.0 ++ ++fn main() { ++ #[cfg(target_os = "linux")] ++ println!("cargo:rustc-cdylib-link-arg=-Wl,-soname=libnmstate.so.1"); ++} +-- +2.45.1 + diff --git a/SOURCES/RHEL-13992-dns-opt-fix.patch b/SOURCES/RHEL-13992-dns-opt-fix.patch deleted file mode 100644 index abcbb2d..0000000 --- a/SOURCES/RHEL-13992-dns-opt-fix.patch +++ /dev/null @@ -1,157 +0,0 @@ -From c95e26154cfe105faedb6fe6187e89da658e6d02 Mon Sep 17 00:00:00 2001 -From: Gris Ge -Date: Tue, 14 Nov 2023 16:08:35 +0800 -Subject: [PATCH 1/2] dns: Fix DNS option `ndots`, `timeout` and `attempts` - -The `ndots`, `timeout` and `attempts` DNS options are allowed to -hold a integer value in the format of `:`. Previously, -nmstate is treating them as invalid DNS option. This patch fix it. - -Now this YAML is supported: - -```yml -dns-resolver: - config: - options: - - rotate - - ndots:9 -``` - -Integration test cases included. - -Signed-off-by: Gris Ge ---- - libnmstate/dns.py | 31 ++++++++++++++++++++++++------- - 1 file changed, 24 insertions(+), 7 deletions(-) - -diff --git a/libnmstate/dns.py b/libnmstate/dns.py -index f792b896..5bb512e8 100644 ---- a/libnmstate/dns.py -+++ b/libnmstate/dns.py -@@ -19,14 +19,12 @@ EMPTY_DNS = { - REMOVE_DNS_CONFIG = {DNS.CONFIG: EMPTY_DNS} - - --SUPPORTED_DNS_OPTIONS = [ -- "attempts", -+SUPPORTED_DNS_OPTS_NO_VALUE = [ - "debug", - "edns0", - "inet6", - "ip6-bytestring", - "ip6-dotint", -- "ndots", - "no-aaaa", - "no-check-names", - "no-ip6-dotint", -@@ -35,11 +33,16 @@ SUPPORTED_DNS_OPTIONS = [ - "rotate", - "single-request", - "single-request-reopen", -- "timeout", - "trust-ad", - "use-vc", - ] - -+SUPPORTED_DNS_OPTS_WITH_VALUE = [ -+ "ndots", -+ "timeout", -+ "attempts", -+] -+ - - class DnsState: - PRIORITY_METADATA = "_priority" -@@ -73,10 +76,24 @@ class DnsState: - - def _canonicalize_dns_options(self): - for opt in self.config_options: -- if opt not in SUPPORTED_DNS_OPTIONS: -+ if opt.find(":") > 0: -+ opt = opt[: opt.find(":")] -+ if opt not in SUPPORTED_DNS_OPTS_WITH_VALUE: -+ raise NmstateValueError( -+ "Option '{}' is not supported to hold " -+ "a value, only support these without " -+ "value: {} and these with values: {}:n", -+ opt, -+ ", ".join(SUPPORTED_DNS_OPTS_NO_VALUE), -+ ":n, ".join(SUPPORTED_DNS_OPTS_WITH_VALUE), -+ ) -+ elif opt not in SUPPORTED_DNS_OPTS_NO_VALUE: - raise NmstateValueError( -- f"Unsupported DNS option {opt}, only support: " -- f"{', '.join(SUPPORTED_DNS_OPTIONS)}", -+ "Option '{}' is not supported, only support these " -+ "without value: {} and these with values: {}:n", -+ opt, -+ ", ".join(SUPPORTED_DNS_OPTS_NO_VALUE), -+ ":n, ".join(SUPPORTED_DNS_OPTS_WITH_VALUE), - ) - - @property --- -2.42.1 - - -From af07271ec5044ec092a3b66c0955636819ccde04 Mon Sep 17 00:00:00 2001 -From: Gris Ge -Date: Tue, 14 Nov 2023 16:16:53 +0800 -Subject: [PATCH 2/2] dns: Fix purging DNS config - -When user desires: - -```yml ---- -dns-resolver: - config: - search: [] -``` - -It means user want to remove all search but preserve servers and -options, current nmstate incorrectly treat this as purge also. - -This patch only treat these two as purge. - -```yml -dns-resolver: - config: {} -``` - -and - -```yml -dns-resolver: - config: - server: [] - search: [] - options: [] -``` - -Integration test cases included. - -Signed-off-by: Gris Ge ---- - libnmstate/nm/dns.py | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/libnmstate/nm/dns.py b/libnmstate/nm/dns.py -index 60ebbba7..b811fdb2 100644 ---- a/libnmstate/nm/dns.py -+++ b/libnmstate/nm/dns.py -@@ -158,7 +158,11 @@ def get_dns_config_iface_names(acs_and_ipv4_profiles, acs_and_ipv6_profiles): - for nm_ac, ip_profile in chain( - acs_and_ipv6_profiles, acs_and_ipv4_profiles - ): -- if ip_profile.props.dns or ip_profile.props.dns_search: -+ if ( -+ ip_profile.props.dns -+ or ip_profile.props.dns_search -+ or ip_profile.props.dns_options -+ ): - try: - iface_name = nm_ac.get_devices()[0].get_iface() - iface_names.append(iface_name) --- -2.42.1 - diff --git a/SOURCES/nmstate-1.4.5.tar.gz.asc b/SOURCES/nmstate-1.4.5.tar.gz.asc deleted file mode 100644 index a4340ad..0000000 --- a/SOURCES/nmstate-1.4.5.tar.gz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCAAdFiEESP1vrlFad7SENoIch4lWe4cVzrwFAmVDid0ACgkQh4lWe4cV -zrx26BAAqv8ec7UMDkJ7MGAXwRpMZrLQ+zjPIDlVH0HVmdvZY2g8Lx2iK9g0xHeL -YGdVk3aL3UwQE/5Tt6qtzQ8sk76dWyveS1XxxNDLZa+TKvcGqDbxnmvOAIBJwrlD -4Q6MNWqudJDsboGotKSAoI/xHJafFzWfHU+SSp4AHtf2xHa2KFZqmaZW5gVdYq9j -/Zhepz8OQ+1s8/frVw1JEqKaTcw5gc0/2xNzh0MkC714Lkk4dhITHP6zh1HF/2i8 -LPIdVHMI8Ze7w4imiamr38+G3XzCQJ/6A/N6couFyJXrLgCn0Jm7Zv8t3TLW69JA -QD/YHcFgeZmh3QRHVoNIOunG7X7eczLjy61VVXMp3F38+GWSLxK2f7DMRyzRvIxF -uBrd9yBZ4qkSEqIG2tEBIZOPg4deDADaesyD3d5c0JROsmxkmhl9SEBk03qWtJEY -kWhCF4tGvVp1r+W7AjS6QpqAtFXJcBQdj1qs49fgRxVGjmw2ljMQdLT6O/oSFNpS -wzjvGhh8WvMcmStCQ0crTOeihYTyJu2PPqJ3c373EnE9xPN3cJVh+AGwV5kcpxkk -bJF8qooJDq7MAuNqiKdXORGzG0ht16TzJ4aE+1vGFAErYZitCzU13rkW3dKIU19h -KgFqlKXUHCS6J3KzJQszDpn+Hw8WOvcCQQ1LivcyLKHlvmTQPi4= -=51yt ------END PGP SIGNATURE----- diff --git a/SOURCES/nmstate-1.4.6.tar.gz.asc b/SOURCES/nmstate-1.4.6.tar.gz.asc new file mode 100644 index 0000000..75b8849 --- /dev/null +++ b/SOURCES/nmstate-1.4.6.tar.gz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEESP1vrlFad7SENoIch4lWe4cVzrwFAmZFuTcACgkQh4lWe4cV +zrx0Jg/9FaBh+ine42rKdD+vSITPnGMB2pNSgU8RMdb35fpypVE6Fx4zavvlN14r +rqO+DA57n2NAQ0Cj+n1HOaCxzbfYG2hAX8NwuFN3iY/KadqUdjdPx9G8vEzZDOFu +MCRZxUVIyrHBB9eoTLbhF6hd0XqWminHK43xaLZFBXZAe7DO9QEz+VxM77qsZaE5 +EhxASs2mUERvjuY61h9lJb41DOxGLZBM5950S9lDM8cE9ZOi7H/8Q/8fhBPdHh5T +ubPZxsgEBQPEBPz6lE5g4Wcc8ggiCROEuUqRmOTpkb6smgFDsLtCBTakv1Z2U5Q0 +YKdnDBfw7T9EV3dhkHR/AHvrLDUZ/bTwe6vO0GQBaSLG/WhvcftzuiDKTcqpAVOm +yUdxla1tinB0cDXohGb50VV9aHd9gFisoLGsPE7BJTqSKhCoQL2zToLHNaMnxNtz +/fJTOyGq1bBtchjbXjaoQO8sa/cxrllWlBYVjaTH7vqwgActrznos/N1sASrMfTw +H1VCKRgwurnomWoIbFNKxPnXNW0Lo31paWhW9wVD78J7Kf9xHrfYiOK2siYgSP7x +nVMuMHZ/j9/EOgHZAPZN3Aod0LWK0/WNwTyFB4IQcLWLaBYVhqlFhShtPo8MeIsJ +Wy7UQmGhtnP8Mt1DQTsfWCH8lQnWpIb84xHYXSEs+2e39GRDCq8= +=lwjx +-----END PGP SIGNATURE----- diff --git a/SOURCES/nmstate.gpg b/SOURCES/nmstate.gpg index 9c0f9a4..3b3a89b 100644 --- a/SOURCES/nmstate.gpg +++ b/SOURCES/nmstate.gpg @@ -47,5 +47,53 @@ E9NlXivSZRblfY9DEa4v0Zr7L9uyp2JU7taIexoLmPbefORThtGmNoc8DwzLlH8s SJXEX1ckgzCUNUPQs37ZmV7q4pXh2yYtcZwufH10o02nl67Yuv+43II3vuvEg9CO qOF1CIUdWB9SZwkAz4MeAjtw5d/YBSqYv9s0pSobvGuo7wBW7MTJ6PkGBzTvdR3H aOfE6WjbuPjr5H0J1oWyWa0/VB7i1OQ7/55IChT137OnVHRENP8HaGmRZYhxwLsI -=PdCG +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 +i2QY7dEEs/uMRtq8C8kSWg== +=259x -----END PGP PUBLIC KEY BLOCK----- diff --git a/SPECS/nmstate.spec b/SPECS/nmstate.spec index 50d3a21..36056e8 100644 --- a/SPECS/nmstate.spec +++ b/SPECS/nmstate.spec @@ -3,7 +3,7 @@ %define libname libnmstate Name: nmstate -Version: 1.4.5 +Version: 1.4.6 Release: 2%{?dist} Summary: Declarative network manager API License: LGPLv2+ @@ -14,7 +14,7 @@ Source2: https://www.nmstate.io/nmstate.gpg Source3: %{url}/releases/download/v%{version}/%{srcname}-vendor-%{version}.tar.xz # Patches 0X are reserved to downstream only Patch0: BZ_2132570-nm-reverse-IPv6-order-before-adding-them-to-setting.patch -Patch10: RHEL-13992-dns-opt-fix.patch +Patch10: 0001-clib-Use-build.rs-to-fix-SONAME.patch BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: gnupg2 @@ -84,22 +84,15 @@ gpgv2 --keyring ./gpgkey-mantainers.gpg %{SOURCE1} %{SOURCE0} pushd rust # Source3 is vendored dependencies %cargo_prep -V 3 - -# The cargo_prep will create `.cargo/config` which take precedence over -# `.cargo/config.toml` shipped by upstream which fix the SONAME of cdylib. -# To workaround that, merge upstream rustflags into cargo_prep created one. -_FLAGS=`sed -ne 's/rustflags = "\(.\+\)"/\1/p' .cargo/config.toml` -sed -i -e "s/rustflags = \[\(.\+\), \]$/rustflags = [\1, \"$_FLAGS\"]/" \ - .cargo/config -rm .cargo/config.toml - popd %build %py3_build pushd rust -make +# It is safe to ignore minimum rust version. The main blocker on MSRV is +# toml which just increase their MSRV by a robot for no hard reason. +%cargo_build --ignore-rust-version popd %install @@ -149,14 +142,20 @@ popd /sbin/ldconfig %changelog +* Fri May 17 2024 Gris Ge - 1.4.6-2 +- Fix clib SONAME. RHEL-32218 + +* Thu May 16 2024 Gris Ge - 1.4.6-1 +- Do not touch interface DNS if global DNS is used. RHEL-32218 + * Wed Nov 15 2023 Gris Ge - 1.4.5-2 -- Fix use case on purging DNS option. RHEL-13992 +- Fix use case on purging DNS option. RHEL-13936 -* Tue Nov 07 2023 Gris Ge - 1.4.5-1 -- Support DNS option. RHEL-13992 +* Thu Nov 02 2023 Gris Ge - 1.4.5-1 +- Support DNS option. RHEL-13936 -* Fri Oct 06 2023 Wen Liang - 1.4.4-5 -- Support treating string as int for address prefix-length. RHEL-11660 +* Wed Oct 04 2023 Wen Liang - 1.4.4-5 +- Support treating string as int for address prefix-length. RHEL-3358 * Wed Aug 30 2023 Fernando Fernandez Mancera - 1.4.4-4 - Fix issue with ovs-bridge and ovs-interface with same name. RHBZ#2231843