Upgrade to 2.2.2
Resolves: RHBZ#1985629 RHBZ#2111398 RHBZ#2113871 RHBZ#2128415 RHBZ#2152101 Signed-off-by: Gris Ge <fge@redhat.com>
This commit is contained in:
		
							parent
							
								
									7992a44c2d
								
							
						
					
					
						commit
						6b175c0bdf
					
				
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -143,3 +143,6 @@ | |||||||
| /nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz | /nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz | ||||||
| /nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz.asc | /nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz.asc | ||||||
| /nmstate-vendor-2.2.2.20221201.c8c776e9.tar.xz | /nmstate-vendor-2.2.2.20221201.c8c776e9.tar.xz | ||||||
|  | /nmstate-2.2.2.tar.gz | ||||||
|  | /nmstate-2.2.2.tar.gz.asc | ||||||
|  | /nmstate-vendor-2.2.2.tar.xz | ||||||
|  | |||||||
							
								
								
									
										304
									
								
								BZ_2111398-ovs-add-support-for-port-trunks.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										304
									
								
								BZ_2111398-ovs-add-support-for-port-trunks.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,304 @@ | |||||||
|  | From dce5073432b4d7ce9bb0f3322c9970a714ae44a6 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Beniamino Galvani <bgalvani@redhat.com> | ||||||
|  | Date: Wed, 23 Nov 2022 10:26:35 +0100 | ||||||
|  | Subject: [PATCH] ovs: add support for port trunks | ||||||
|  | 
 | ||||||
|  | This commit adds support for the "trunk-tags" property in ovs ports. | ||||||
|  | 
 | ||||||
|  | Example: | ||||||
|  | 
 | ||||||
|  | ```yml | ||||||
|  |   - name: ovs0 | ||||||
|  |     type: ovs-interface | ||||||
|  |     state: up | ||||||
|  |   - name: ovs-br0 | ||||||
|  |     type: ovs-bridge | ||||||
|  |     state: up | ||||||
|  |     bridge: | ||||||
|  |       port: | ||||||
|  |         - name: ovs0 | ||||||
|  |           vlan: | ||||||
|  |             mode: trunk | ||||||
|  |             trunk-tags: | ||||||
|  |               - id-range: | ||||||
|  |                   min: 20 | ||||||
|  |                   max: 22 | ||||||
|  |               - id-range: | ||||||
|  |                   min: 30 | ||||||
|  |                   max: 32 | ||||||
|  |               - id: 40 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | The property is implemented in NM via "ovs-port.trunks" and | ||||||
|  | corresponds to the "trunks" property of ports in ovs: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  |     Bridge ovs-br0 | ||||||
|  |         Port ovs0 | ||||||
|  |             trunks: [20, 21, 22, 30, 31, 32, 40] | ||||||
|  |             Interface ovs0 | ||||||
|  |                 type: internal | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Signed-off-by: Beniamino Galvani <bgalvani@redhat.com> | ||||||
|  | Signed-off-by: Gris Ge <fge@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  rust/src/lib/nm/nm_dbus/connection/conn.rs | 38 ++++++++++++++++++++++ | ||||||
|  |  rust/src/lib/nm/nm_dbus/connection/mod.rs  |  2 +- | ||||||
|  |  rust/src/lib/nm/nm_dbus/connection/ovs.rs  | 24 +++++++++++++- | ||||||
|  |  rust/src/lib/nm/nm_dbus/mod.rs             |  2 +- | ||||||
|  |  rust/src/lib/nm/query/ovs.rs               | 32 +++++++++++++++--- | ||||||
|  |  rust/src/lib/nm/settings/ovs.rs            | 25 +++++++++++--- | ||||||
|  |  6 files changed, 111 insertions(+), 12 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/rust/src/lib/nm/nm_dbus/connection/conn.rs b/rust/src/lib/nm/nm_dbus/connection/conn.rs
 | ||||||
|  | index 673bc597..69784fed 100644
 | ||||||
|  | --- a/rust/src/lib/nm/nm_dbus/connection/conn.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/nm_dbus/connection/conn.rs
 | ||||||
|  | @@ -442,3 +442,41 @@ pub(crate) fn nm_con_get_from_obj_path(
 | ||||||
|  |      } | ||||||
|  |      Ok(nm_conn) | ||||||
|  |  } | ||||||
|  | +
 | ||||||
|  | +#[derive(Debug, Clone, PartialEq, Default, Deserialize)]
 | ||||||
|  | +#[serde(try_from = "DbusDictionary")]
 | ||||||
|  | +#[non_exhaustive]
 | ||||||
|  | +pub struct NmRange {
 | ||||||
|  | +    pub start: u64,
 | ||||||
|  | +    pub end: u64,
 | ||||||
|  | +    _other: DbusDictionary,
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  | +impl TryFrom<DbusDictionary> for NmRange {
 | ||||||
|  | +    type Error = NmError;
 | ||||||
|  | +    fn try_from(mut v: DbusDictionary) -> Result<Self, Self::Error> {
 | ||||||
|  | +        Ok(Self {
 | ||||||
|  | +            start: _from_map!(v, "start", u64::try_from)?.unwrap_or_default(),
 | ||||||
|  | +            end: _from_map!(v, "end", u64::try_from)?.unwrap_or_default(),
 | ||||||
|  | +            _other: v,
 | ||||||
|  | +        })
 | ||||||
|  | +    }
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  | +impl NmRange {
 | ||||||
|  | +    pub fn to_value(&self) -> Result<zvariant::Value, NmError> {
 | ||||||
|  | +        let mut ret = zvariant::Dict::new(
 | ||||||
|  | +            zvariant::Signature::from_str_unchecked("s"),
 | ||||||
|  | +            zvariant::Signature::from_str_unchecked("v"),
 | ||||||
|  | +        );
 | ||||||
|  | +        ret.append(
 | ||||||
|  | +            zvariant::Value::new("start"),
 | ||||||
|  | +            zvariant::Value::new(zvariant::Value::U64(self.start)),
 | ||||||
|  | +        )?;
 | ||||||
|  | +        ret.append(
 | ||||||
|  | +            zvariant::Value::new("end"),
 | ||||||
|  | +            zvariant::Value::new(zvariant::Value::U64(self.end)),
 | ||||||
|  | +        )?;
 | ||||||
|  | +        Ok(zvariant::Value::Dict(ret))
 | ||||||
|  | +    }
 | ||||||
|  | +}
 | ||||||
|  | diff --git a/rust/src/lib/nm/nm_dbus/connection/mod.rs b/rust/src/lib/nm/nm_dbus/connection/mod.rs
 | ||||||
|  | index 04f2ee49..57504f77 100644
 | ||||||
|  | --- a/rust/src/lib/nm/nm_dbus/connection/mod.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/nm_dbus/connection/mod.rs
 | ||||||
|  | @@ -42,7 +42,7 @@ pub use self::bridge::{
 | ||||||
|  |      NmSettingBridge, NmSettingBridgePort, NmSettingBridgeVlanRange, | ||||||
|  |  }; | ||||||
|  |  pub use self::conn::{ | ||||||
|  | -    NmConnection, NmSettingConnection, NmSettingsConnectionFlag,
 | ||||||
|  | +    NmConnection, NmRange, NmSettingConnection, NmSettingsConnectionFlag,
 | ||||||
|  |  }; | ||||||
|  |  pub use self::ethtool::NmSettingEthtool; | ||||||
|  |  pub use self::ieee8021x::NmSetting8021X; | ||||||
|  | diff --git a/rust/src/lib/nm/nm_dbus/connection/ovs.rs b/rust/src/lib/nm/nm_dbus/connection/ovs.rs
 | ||||||
|  | index 2221c003..b728d88f 100644
 | ||||||
|  | --- a/rust/src/lib/nm/nm_dbus/connection/ovs.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/nm_dbus/connection/ovs.rs
 | ||||||
|  | @@ -5,7 +5,7 @@ use std::convert::TryFrom;
 | ||||||
|  |   | ||||||
|  |  use serde::Deserialize; | ||||||
|  |   | ||||||
|  | -use super::super::{connection::DbusDictionary, NmError, ToDbusValue};
 | ||||||
|  | +use super::super::{connection::DbusDictionary, NmError, NmRange, ToDbusValue};
 | ||||||
|  |   | ||||||
|  |  #[derive(Debug, Clone, PartialEq, Default, Deserialize)] | ||||||
|  |  #[serde(try_from = "DbusDictionary")] | ||||||
|  | @@ -71,6 +71,7 @@ pub struct NmSettingOvsPort {
 | ||||||
|  |      pub down_delay: Option<u32>, | ||||||
|  |      pub tag: Option<u32>, | ||||||
|  |      pub vlan_mode: Option<String>, | ||||||
|  | +    pub trunks: Option<Vec<NmRange>>,
 | ||||||
|  |      pub lacp: Option<String>, | ||||||
|  |      _other: HashMap<String, zvariant::OwnedValue>, | ||||||
|  |  } | ||||||
|  | @@ -85,11 +86,23 @@ impl TryFrom<DbusDictionary> for NmSettingOvsPort {
 | ||||||
|  |              tag: _from_map!(v, "tag", u32::try_from)?, | ||||||
|  |              vlan_mode: _from_map!(v, "vlan-mode", String::try_from)?, | ||||||
|  |              lacp: _from_map!(v, "lacp", String::try_from)?, | ||||||
|  | +            trunks: _from_map!(v, "trunks", own_value_to_trunks)?,
 | ||||||
|  |              _other: v, | ||||||
|  |          }) | ||||||
|  |      } | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | +fn own_value_to_trunks(
 | ||||||
|  | +    value: zvariant::OwnedValue,
 | ||||||
|  | +) -> Result<Vec<NmRange>, NmError> {
 | ||||||
|  | +    let mut ret = Vec::new();
 | ||||||
|  | +    let raw_ranges = Vec::<DbusDictionary>::try_from(value)?;
 | ||||||
|  | +    for raw_range in raw_ranges {
 | ||||||
|  | +        ret.push(NmRange::try_from(raw_range)?);
 | ||||||
|  | +    }
 | ||||||
|  | +    Ok(ret)
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  |  impl ToDbusValue for NmSettingOvsPort { | ||||||
|  |      fn to_value(&self) -> Result<HashMap<&str, zvariant::Value>, NmError> { | ||||||
|  |          let mut ret = HashMap::new(); | ||||||
|  | @@ -111,6 +124,15 @@ impl ToDbusValue for NmSettingOvsPort {
 | ||||||
|  |          if let Some(v) = self.lacp.as_ref() { | ||||||
|  |              ret.insert("lacp", zvariant::Value::new(v)); | ||||||
|  |          } | ||||||
|  | +        if let Some(v) = self.trunks.as_ref() {
 | ||||||
|  | +            let mut trunk_values = zvariant::Array::new(
 | ||||||
|  | +                zvariant::Signature::from_str_unchecked("a{sv}"),
 | ||||||
|  | +            );
 | ||||||
|  | +            for range in v {
 | ||||||
|  | +                trunk_values.append(range.to_value()?)?;
 | ||||||
|  | +            }
 | ||||||
|  | +            ret.insert("trunks", zvariant::Value::Array(trunk_values));
 | ||||||
|  | +        }
 | ||||||
|  |          ret.extend(self._other.iter().map(|(key, value)| { | ||||||
|  |              (key.as_str(), zvariant::Value::from(value.clone())) | ||||||
|  |          })); | ||||||
|  | diff --git a/rust/src/lib/nm/nm_dbus/mod.rs b/rust/src/lib/nm/nm_dbus/mod.rs
 | ||||||
|  | index 5e408be5..053d92a0 100644
 | ||||||
|  | --- a/rust/src/lib/nm/nm_dbus/mod.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/nm_dbus/mod.rs
 | ||||||
|  | @@ -26,7 +26,7 @@ pub use self::active_connection::{
 | ||||||
|  |      NmActiveConnection, NM_ACTIVATION_STATE_FLAG_EXTERNAL, | ||||||
|  |  }; | ||||||
|  |  pub use self::connection::{ | ||||||
|  | -    NmConnection, NmIpRoute, NmIpRouteRule, NmIpRouteRuleAction,
 | ||||||
|  | +    NmConnection, NmIpRoute, NmIpRouteRule, NmIpRouteRuleAction, NmRange,
 | ||||||
|  |      NmSetting8021X, NmSettingBond, NmSettingBridge, NmSettingBridgePort, | ||||||
|  |      NmSettingBridgeVlanRange, NmSettingConnection, NmSettingEthtool, | ||||||
|  |      NmSettingInfiniBand, NmSettingIp, NmSettingIpMethod, NmSettingLoopback, | ||||||
|  | diff --git a/rust/src/lib/nm/query/ovs.rs b/rust/src/lib/nm/query/ovs.rs
 | ||||||
|  | index 30bfc160..33b82150 100644
 | ||||||
|  | --- a/rust/src/lib/nm/query/ovs.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/query/ovs.rs
 | ||||||
|  | @@ -3,15 +3,16 @@
 | ||||||
|  |  use std::convert::TryFrom; | ||||||
|  |   | ||||||
|  |  use super::super::{ | ||||||
|  | -    nm_dbus::NmConnection,
 | ||||||
|  | +    nm_dbus::{NmConnection, NmRange},
 | ||||||
|  |      settings::{get_exist_profile, NM_SETTING_OVS_PORT_SETTING_NAME}, | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  use crate::{ | ||||||
|  | -    BridgePortVlanConfig, BridgePortVlanMode, Interface, InterfaceType,
 | ||||||
|  | -    Interfaces, NmstateError, OvsBridgeBondConfig, OvsBridgeBondMode,
 | ||||||
|  | -    OvsBridgeBondPortConfig, OvsBridgeConfig, OvsBridgeOptions,
 | ||||||
|  | -    OvsBridgePortConfig, OvsDpdkConfig, OvsPatchConfig,
 | ||||||
|  | +    BridgePortTunkTag, BridgePortVlanConfig, BridgePortVlanMode,
 | ||||||
|  | +    BridgePortVlanRange, Interface, InterfaceType, Interfaces, NmstateError,
 | ||||||
|  | +    OvsBridgeBondConfig, OvsBridgeBondMode, OvsBridgeBondPortConfig,
 | ||||||
|  | +    OvsBridgeConfig, OvsBridgeOptions, OvsBridgePortConfig, OvsDpdkConfig,
 | ||||||
|  | +    OvsPatchConfig,
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  pub(crate) fn nm_ovs_bridge_conf_get( | ||||||
|  | @@ -202,6 +203,16 @@ fn get_vlan_info(nm_conn: &NmConnection) -> Option<BridgePortVlanConfig> {
 | ||||||
|  |                          return None; | ||||||
|  |                      } | ||||||
|  |                  }), | ||||||
|  | +                trunk_tags: match port_conf.trunks.as_deref() {
 | ||||||
|  | +                    Some(trunks) => {
 | ||||||
|  | +                        let mut ret = Vec::new();
 | ||||||
|  | +                        for t in trunks {
 | ||||||
|  | +                            ret.push(nm_range_to_trunk_tag(t));
 | ||||||
|  | +                        }
 | ||||||
|  | +                        Some(ret)
 | ||||||
|  | +                    }
 | ||||||
|  | +                    _ => None,
 | ||||||
|  | +                },
 | ||||||
|  |                  ..Default::default() | ||||||
|  |              }); | ||||||
|  |          } | ||||||
|  | @@ -209,6 +220,17 @@ fn get_vlan_info(nm_conn: &NmConnection) -> Option<BridgePortVlanConfig> {
 | ||||||
|  |      None | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | +fn nm_range_to_trunk_tag(range: &NmRange) -> BridgePortTunkTag {
 | ||||||
|  | +    if range.start == range.end {
 | ||||||
|  | +        BridgePortTunkTag::Id(range.start as u16)
 | ||||||
|  | +    } else {
 | ||||||
|  | +        BridgePortTunkTag::IdRange(BridgePortVlanRange {
 | ||||||
|  | +            min: range.start as u16,
 | ||||||
|  | +            max: range.end as u16,
 | ||||||
|  | +        })
 | ||||||
|  | +    }
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  |  pub(crate) fn get_ovs_patch_config( | ||||||
|  |      nm_conn: &NmConnection, | ||||||
|  |  ) -> Option<OvsPatchConfig> { | ||||||
|  | diff --git a/rust/src/lib/nm/settings/ovs.rs b/rust/src/lib/nm/settings/ovs.rs
 | ||||||
|  | index 3d3b3c5a..dd71d8a7 100644
 | ||||||
|  | --- a/rust/src/lib/nm/settings/ovs.rs
 | ||||||
|  | +++ b/rust/src/lib/nm/settings/ovs.rs
 | ||||||
|  | @@ -4,15 +4,16 @@ use std::collections::HashMap;
 | ||||||
|  |  use std::iter::FromIterator; | ||||||
|  |   | ||||||
|  |  use super::super::nm_dbus::{ | ||||||
|  | -    NmConnection, NmSettingOvsDpdk, NmSettingOvsExtIds, NmSettingOvsIface,
 | ||||||
|  | -    NmSettingOvsPatch,
 | ||||||
|  | +    NmConnection, NmRange, NmSettingOvsDpdk, NmSettingOvsExtIds,
 | ||||||
|  | +    NmSettingOvsIface, NmSettingOvsPatch,
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  use super::connection::gen_nm_conn_setting; | ||||||
|  |   | ||||||
|  |  use crate::{ | ||||||
|  | -    BaseInterface, Interface, InterfaceType, NmstateError, OvsBridgeBondMode,
 | ||||||
|  | -    OvsBridgeInterface, OvsBridgePortConfig, OvsInterface, UnknownInterface,
 | ||||||
|  | +    BaseInterface, BridgePortTunkTag, Interface, InterfaceType, NmstateError,
 | ||||||
|  | +    OvsBridgeBondMode, OvsBridgeInterface, OvsBridgePortConfig, OvsInterface,
 | ||||||
|  | +    UnknownInterface,
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  pub(crate) fn create_ovs_port_nm_conn( | ||||||
|  | @@ -66,11 +67,27 @@ pub(crate) fn create_ovs_port_nm_conn(
 | ||||||
|  |          if let Some(vlan_mode) = vlan_conf.mode { | ||||||
|  |              nm_ovs_port_set.vlan_mode = Some(vlan_mode.to_string()); | ||||||
|  |          } | ||||||
|  | +        if let Some(trunk_tags) = &vlan_conf.trunk_tags {
 | ||||||
|  | +            let mut ret = Vec::new();
 | ||||||
|  | +            for trunk_tag in trunk_tags.as_slice() {
 | ||||||
|  | +                ret.push(trunk_tag_to_nm_range(trunk_tag));
 | ||||||
|  | +            }
 | ||||||
|  | +            nm_ovs_port_set.trunks = Some(ret);
 | ||||||
|  | +        }
 | ||||||
|  |      } | ||||||
|  | +
 | ||||||
|  |      nm_conn.ovs_port = Some(nm_ovs_port_set); | ||||||
|  |      Ok(nm_conn) | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | +fn trunk_tag_to_nm_range(trunk_tag: &BridgePortTunkTag) -> NmRange {
 | ||||||
|  | +    let mut ret = NmRange::default();
 | ||||||
|  | +    let (vid_min, vid_max) = trunk_tag.get_vlan_tag_range();
 | ||||||
|  | +    ret.start = vid_min.into();
 | ||||||
|  | +    ret.end = vid_max.into();
 | ||||||
|  | +    ret
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  |  pub(crate) fn get_ovs_port_name( | ||||||
|  |      ovs_br_iface: &OvsBridgeInterface, | ||||||
|  |      ovs_iface_name: &str, | ||||||
|  | -- 
 | ||||||
|  | 2.39.0 | ||||||
|  | 
 | ||||||
							
								
								
									
										14
									
								
								nmstate.spec
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								nmstate.spec
									
									
									
									
									
								
							| @ -4,14 +4,15 @@ | |||||||
| 
 | 
 | ||||||
| Name:           nmstate | Name:           nmstate | ||||||
| Version:        2.2.2 | Version:        2.2.2 | ||||||
| Release:        0.alpha.20221201%{?dist} | Release:        1%{?dist} | ||||||
| Summary:        Declarative network manager API | Summary:        Declarative network manager API | ||||||
| License:        LGPLv2+ | License:        LGPLv2+ | ||||||
| URL:            https://github.com/%{srcname}/%{srcname} | URL:            https://github.com/%{srcname}/%{srcname} | ||||||
| Source0:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-%{version}-alpha.20221201.c8c776e9.tar.gz | Source0:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-%{version}.tar.gz | ||||||
| Source1:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-%{version}-alpha.20221201.c8c776e9.tar.gz.asc | Source1:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-%{version}.tar.gz.asc | ||||||
| Source2:        https://nmstate.io/nmstate.gpg | Source2:        https://nmstate.io/nmstate.gpg | ||||||
| Source3:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-vendor-%{version}.20221201.c8c776e9.tar.xz | Source3:        https://github.com/nmstate/nmstate/releases/download/v%{version}/nmstate-vendor-%{version}.tar.xz | ||||||
|  | Patch1:         BZ_2111398-ovs-add-support-for-port-trunks.patch | ||||||
| BuildRequires:  python3-devel | BuildRequires:  python3-devel | ||||||
| BuildRequires:  python3-setuptools | BuildRequires:  python3-setuptools | ||||||
| BuildRequires:  gnupg2 | BuildRequires:  gnupg2 | ||||||
| @ -77,7 +78,7 @@ This package contains the Python 3 library for Nmstate. | |||||||
| %prep | %prep | ||||||
| gpg2 --import --import-options import-export,import-minimal %{SOURCE2} > ./gpgkey-mantainers.gpg | gpg2 --import --import-options import-export,import-minimal %{SOURCE2} > ./gpgkey-mantainers.gpg | ||||||
| gpgv2 --keyring ./gpgkey-mantainers.gpg %{SOURCE1} %{SOURCE0} | gpgv2 --keyring ./gpgkey-mantainers.gpg %{SOURCE1} %{SOURCE0} | ||||||
| %setup -q | %autosetup -p1 | ||||||
| 
 | 
 | ||||||
| pushd rust | pushd rust | ||||||
| # Source3 is vendored dependencies | # Source3 is vendored dependencies | ||||||
| @ -150,6 +151,9 @@ popd | |||||||
| /sbin/ldconfig | /sbin/ldconfig | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Wed Dec 14 2022 Gris Ge <fge@redhat.com> - 2.2.2-1 | ||||||
|  | - Upgrade to 2.2.2 | ||||||
|  | 
 | ||||||
| * Thu Dec 01 2022 Fernando Fernandez Mancera <ferferna@redhat.com> - 2.2.2-0.alpha.20221201.c8c776e9 | * Thu Dec 01 2022 Fernando Fernandez Mancera <ferferna@redhat.com> - 2.2.2-0.alpha.20221201.c8c776e9 | ||||||
| - Upgrade to 2.2.2-0.alpha.20221201.c8c776e9 | - Upgrade to 2.2.2-0.alpha.20221201.c8c776e9 | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										8
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								sources
									
									
									
									
									
								
							| @ -1,4 +1,4 @@ | |||||||
| SHA512 (nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz) = 1747c4c30022771bd8d6d2c1fffb13552a9064abcb943ce3196dff857ad373948016c75a48aa8a40973fa42c90556a821f50f1643969cee90c90a47137d6d146 | SHA512 (nmstate-2.2.2.tar.gz) = 9e20b4f944596e0cf46b470a2a1a4bfcd4fa7a114fd9517b17507cdfd5c1203f81c6bfd730f877c67eb80cae0cc87633ba66185f74d69fc92a7c03a9e195f315 | ||||||
| SHA512 (nmstate-2.2.2-alpha.20221201.c8c776e9.tar.gz.asc) = addbffdf4b6a426a9b73fd8c5b328c3e3c2c5241c7992acaf8b0679373ffd8b273861a7b073da2050c683c5033e81c62266001899488041a2dabcc634e29f13c | SHA512 (nmstate-2.2.2.tar.gz.asc) = 8167aabab9214b31a56ba986e961ec7b7e6f2513dd69c4c7cc37eea2d80d49329683c6c39c37d5f7c52512a0a6800f505e7de545b9d58c33d8c65c8902944d9e | ||||||
| SHA512 (nmstate-vendor-2.2.2.20221201.c8c776e9.tar.xz) = 27e59a1cafb1b795de3c826b416dcbeb6f68c71103b69b0884d5fdb8d65961427e5d1a42ce4edb90412dcdc0269c4f0293d4c3b3dc859e00737de4ba5172391a | SHA512 (nmstate-vendor-2.2.2.tar.xz) = 0e7314e50a5ddc963c4bb71b07d2ab76938e2f4c9b7238032582c781aee66402490278dec9ad75cfe842623a257904c55d0f8d3be2427e63f634dc7f93fc8f5b | ||||||
| SHA512 (nmstate.gpg) = 2e211f2268a412036d71b90bb37aab5a30c1a69a9ff85debbad703bc018183890b4a3e38b00b96b4d8392dc739e8cdec0d891e220c04d61289c384f1bbbef5cb | SHA512 (nmstate.gpg) = 91c6b1d8aef4944520d4bdd4e90121bbbbaf772444f5eb6081cee81e17b21b66798437cdc09a117c6fc77c54d798aaa30400857aa090cb2102b47841f45cf6eb | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user