Blob Blame History Raw
%?python_enable_dependency_generator
%define srcname nmstate
%define libname libnmstate

Name:           nmstate
Version:        0.3.4
Release:        12%{?dist}
Summary:        Declarative network manager API
License:        LGPLv2+
URL:            https://github.com/%{srcname}/%{srcname}
Source0:        %{url}/releases/download/v%{version}/%{srcname}-%{version}.tar.gz
Source1:        %{url}/releases/download/v%{version}/%{srcname}-%{version}.tar.gz.asc
Source2:        https://www.nmstate.io/nmstate.gpg
Patch1:         BZ_1858762-hide_ovs_patch_port_mtu.patch
Patch2:         BZ_1861263-handle-external-managed-interface.patch
Patch3:         BZ_1861668_ignore_unknown_iface.patch
Patch4:         BZ_1862025-remove_existing_profiles.patch
Patch5:         BZ_1858758-fix_ovs_bond.patch
Patch6:         BZ_1859844-fix_converting_memory_only.patch
Patch7:         BZ_1866269-preserve_nm_uuid_in_ovsdb.patch
Patch8:         BZ_1869345_ovsdb_remove_all_ports.patch
BuildArch:      noarch
BuildRequires:  python3-devel
BuildRequires:  python3-setuptools
BuildRequires:  gnupg2
Requires:       python3-setuptools
Requires:       python3-%{libname} = %{?epoch:%{epoch}:}%{version}-%{release}

%description
Nmstate is a library with an accompanying command line tool that manages host
networking settings in a declarative manner and aimed to satisfy enterprise
needs to manage host networking through a northbound declarative API and multi
provider support on the southbound.


%package -n python3-%{libname}
Summary:        nmstate Python 3 API library
Requires:       NetworkManager-libnm >= 1:1.26.0
# Use Recommends for NetworkManager because only access to NM DBus is required,
# but NM could be running on a different host
Recommends:     NetworkManager
# Avoid automatically generated profiles
Recommends:     NetworkManager-config-server
# Use Suggests for NetworkManager-ovs and NetworkManager-team since it is only
# required for OVS and team support
Suggests:       NetworkManager-ovs
Suggests:       NetworkManager-team

%package -n nmstate-plugin-ovsdb
Summary:        nmstate plugin for OVS database manipulation
Requires:       python3-%{libname} = %{?epoch:%{epoch}:}%{version}-%{release}
# The python-openvswitch rpm pacakge is not in the same repo with nmstate,
# hence state it as Recommends, no requires.
Recommends:     python3dist(ovs)

%description -n python3-%{libname}
This package contains the Python 3 library for nmstate.

%description -n nmstate-plugin-ovsdb
This package contains the nmstate plugin for OVS database manipulation.

%prep
gpg2 --import --import-options import-export,import-minimal %{SOURCE2} > ./gpgkey-mantainers.gpg
gpgv2 --keyring ./gpgkey-mantainers.gpg %{SOURCE1} %{SOURCE0}
%autosetup -p1

%build
%py3_build

%install
%py3_install

%files
%doc README.md
%doc examples/
%{_mandir}/man8/nmstatectl.8*
%{python3_sitelib}/nmstatectl
%{_bindir}/nmstatectl

%files -n python3-%{libname}
%license LICENSE
%{python3_sitelib}/%{libname}
%{python3_sitelib}/%{srcname}-*.egg-info/
%exclude %{python3_sitelib}/%{libname}/plugins/nmstate_plugin_*
%exclude %{python3_sitelib}/%{libname}/plugins/__pycache__/nmstate_plugin_*

%files -n nmstate-plugin-ovsdb
%{python3_sitelib}/%{libname}/plugins/nmstate_plugin_ovsdb*
%{python3_sitelib}/%{libname}/plugins/__pycache__/nmstate_plugin_ovsdb*

%changelog
* Tue Aug 18 2020 Gris Ge <fge@redhat.com> - 0.3.4-12
- New patch: OVSDB: Allowing remove all OVS ports. RHBZ#1869345

* Tue Aug 18 2020 Gris Ge <fge@redhat.com> - 0.3.4-11
- OVSDB: Allowing remove all OVS ports. RHBZ#1869345

* Thu Aug 06 2020 Gris Ge <fge@redhat.com> - 0.3.4-10
- OVSDB: Preserv old external_ids. RHBZ#1866269

* Tue Aug 04 2020 Gris Ge <fge@redhat.com> - 0.3.4-9
- Fix converting memory only profile to persistent. RHBZ#1859844

* Mon Aug 03 2020 Gris Ge <fge@redhat.com> - 0.3.4-8
- Fix failure when adding ovs bond to existing bridge. RHBZ#1858758

* Thu Jul 30 2020 Gris Ge <fge@redhat.com> - 0.3.4-7
- Remove existing inactivate NM profiles. RHBZ#1862025

* Wed Jul 29 2020 Gris Ge <fge@redhat.com> - 0.3.4-6
- New build to retrigger the CI gating.

* Wed Jul 29 2020 Gris Ge <fge@redhat.com> - 0.3.4-5
- Use new patch. RHBZ#1861668

* Wed Jul 29 2020 Gris Ge <fge@redhat.com> - 0.3.4-4
- Ignore unknown interface. RHBZ#1861668

* Tue Jul 28 2020 Gris Ge <fge@redhat.com> - 0.3.4-3
- Add support NetworkManaged exteranl managed interface. RHBZ#1861263

* Tue Jul 28 2020 Gris Ge <fge@redhat.com> - 0.3.4-2
- Hide MTU for OVS patch port. RHBZ#1858762

* Sat Jul 25 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.3.4-1
- Upgrade to 0.3.4

* Fri Jul 24 2020 Gris Ge <fge@redhat.com> - 0.3.3-3
- Allowing child been marked absent. RHBZ#1859148

* Mon Jul 06 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.3.3-2
- Fix bug 1850698

* Thu Jul 02 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.3.3-1
- Upgrade to 0.3.3

* Mon Jun 29 2020 Gris Ge <fge@redhat.com> - 0.3.2-6
- Improve performance by remove unneeded calls. RHBZ#1820009

* Mon Jun 29 2020 Gris Ge <fge@redhat.com> - 0.3.2-5
- Sort the pretty state with priority. RHBZ#1806474

* Mon Jun 29 2020 Gris Ge <fge@redhat.com> - 0.3.2-4
- Canonicalize IP address. RHBZ#1816612

* Mon Jun 29 2020 Gris Ge <fge@redhat.com> - 0.3.2-3
- Improve VLAN MTU error message. RHBZ#1788763

* Mon Jun 29 2020 Gris Ge <fge@redhat.com> - 0.3.2-2
- Fix bug 1850698

* Mon Jun 15 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.3.2-1
- Upgrade to 0.3.2
- Sync. up with upstream spec file

* Thu Jun 11 2020 Gris Ge <fge@redhat.com> - 0.3.1-1
- Upgrade to 0.3.1

* Wed May 13 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.3.0-1
- Upgrade to 0.3.0
- Sync. up with upstream spec file.
- Update signature verification.

* Tue Mar 31 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.9-1
- Upgrade to 0.2.9

* Wed Mar 25 2020 Gris Ge <fge@redhat.com> - 0.2.6-6
- Support 3+ DNS name server(IPv4 only or IPv6 only). RHBZ #1816043

* Fri Mar 20 2020 Gris Ge <fge@redhat.com> - 0.2.6-5
- Support static DNS with DHCP. RHBZ #1815112

* Thu Mar 12 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.6-4.8
- Fix bond mac and options regression. RHBZ #1809330

* Mon Mar 09 2020 Gris Ge <fge@redhat.com> - 0.2.6-3.8
- Fix change bond mode. RHBZ #1809330

* Mon Mar 02 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.6-2.7
- Fix cmd stuck when trying to create ovs-bond. RHBZ #1806249.

* Tue Feb 25 2020 Gris Ge <fge@redhat.com> - 0.2.6-1
- Upgrade to 0.2.6

* Thu Feb 20 2020 Gris Ge <fge@redhat.com> - 0.2.5-1
- Upgrade to 0.2.5

* Thu Feb 13 2020 Gris Ge <fge@redhat.com> - 0.2.4-2
- Fix failure when editing existing OVS interface. RHBZ #1786935

* Thu Feb 13 2020 Gris Ge <fge@redhat.com> - 0.2.4-1
- Upgrade to 0.2.4

* Wed Feb 05 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.3-1
- Upgrade to 0.2.3

* Tue Feb 04 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.2-3
- Fix the incorrect source

* Tue Feb 04 2020 Fernando Fernandez Mancera <ferferna@redhat.com> - 0.2.2-2
- Upgrade to 0.2.2

* Wed Jan 22 2020 Gris Ge <fge@redhat.com> - 0.2.0-3.1
- Fix the memeory leak of NM.Client. RHBZ #1784707

* Mon Dec 02 2019 Gris Ge <fge@redhat.com> - 0.2.0-2
- Fix the incorrect source tarbal.

* Mon Dec 02 2019 Gris Ge <fge@redhat.com> - 0.2.0-1
- Upgrade to nmstate 0.2.0

* Mon Dec 02 2019 Gris Ge <fge@redhat.com> - 0.1.1-4
- Fix the problem found by CI gating.

* Mon Dec 02 2019 Gris Ge <fge@redhat.com> - 0.1.1-3
- Bump dist number as RHEL 8.1.1 took 0.1.1-2.

* Mon Dec 02 2019 Gris Ge <fge@redhat.com> - 0.1.1-2
- Upgrade to nmstate 0.1.1.

* Tue Sep 10 2019 Gris Ge <fge@redhat.com> - 0.0.8-15
- Detach slaves without deleting them: RHBZ #1749632

* Fri Sep 06 2019 Gris Ge <fge@redhat.com> - 0.0.8-14
- Preserve (dynamic) IPv6 address base on MAC address: RHBZ #1748825

* Fri Sep 06 2019 Gris Ge <fge@redhat.com> - 0.0.8-13
- Prioritize master interfaces activaction: RHBZ #1749314

* Mon Sep 02 2019 Gris Ge <fge@redhat.com> - 0.0.8-12
- Fix slave activatoin race: RHBZ #1741440

* Mon Sep 02 2019 Gris Ge <fge@redhat.com - 0.0.8-11
- Add NetworkManager-config-server dependency: Fix RHBZ #1740085

* Thu Aug 15 2019 Gris Ge <fge@redhat.com> - 0.0.8-10
- Fix RHBZ #1740125

* Wed Aug 14 2019 Gris Ge <fge@redhat.com> - 0.0.8-9
- Fix RHBZ #1741049

* Wed Aug 14 2019 Gris Ge <fge@redhat.com> - 0.0.8-8
- Fix RHBZ #1740584

* Tue Aug 13 2019 Gris Ge <fge@redhat.com> - 0.0.8-7
- Fix RHBZ #1740554

* Tue Aug 13 2019 Gris Ge <fge@redhat.com> - 0.0.8-6
- Bump release tag as CNV took the -5.

* Tue Aug 13 2019 Gris Ge <fge@redhat.com> - 0.0.8-5
- Bump release tag as CNV took the -4.

* Tue Aug 13 2019 Gris Ge <fge@redhat.com> - 0.0.8-4
- Disable reapply on ipv6 to fix bug 1738101.

* Fri Jul 26 2019 Gris Ge <fge@redhat.com> - 0.0.8-3
- Fix the license to meet Fedora/RHEL guideline.

* Fri Jul 26 2019 Gris Ge <fge@redhat.com> - 0.0.8-2
- Relicense to LGPL2.1+.

* Fri Jul 26 2019 Gris Ge <fge@redhat.com> - 0.0.8-1
- Upgrade to 0.0.8.

* Fri Jun 14 2019 Gris Ge <fge@redhat.com> - 0.0.7-1
- Upgrade to 0.0.7.

* Mon Apr 22 2019 Gris Ge <fge@redhat.com> - 0.0.5-3
- Add missing runtime dependency.

* Thu Mar 21 2019 Gris Ge <fge@redhat.com> - 0.0.5-2
- Rebuild to enable CI testing.

* Mon Mar 18 2019 Gris Ge <fge@redhat.com> - 0.0.5-1
- Initial release