50945d8e7f
- Version bump to 2.8.1. Some of the changes are: * connmgr: Fix violation of flow monitoring protocol description. * ovn/actions: Improve OVN load-balancing performance. * dpif-netdev: Fix a zero-rate bug for meter * conntrack: Tighten handling of alg reverse conns. * conntrack: Add function ct_print_conn_info(). * conntrack: Create nat_conn_keys_insert(). * netdev-dpdk: reset packet_type for reused dp_packets. * ofp-util: Fix memory leaks when parsing OF1.5 group properties. * ofp-util: Fix memory leaks on error cases in ofputil_decode_group_mod(). * ofp-util: Fix buffer overread in ofputil_decode_bundle_add(). * ofproto: Include patch ports in mtu overriden check * netdev-tc-offloads: Fix vxlan tunnel offloading * bridge: Fix controller status update to passive connections * lib/odp: Fix handling of set masked action in parse_odp_action * tests: Fix sparse error on test-ovn.c * dpif-netdev: Fix per packet cycles statistics. * netdev-dpdk: update vhost user client port status. * ovsdb-server.1: Fix mention of wrong option. OBS-URL: https://build.opensuse.org/request/show/530019 OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=126
722 lines
23 KiB
RPMSpec
722 lines
23 KiB
RPMSpec
#
|
||
# spec file for package openvswitch
|
||
#
|
||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||
#
|
||
# All modifications and additions to the file contributed by third parties
|
||
# remain the property of their copyright owners, unless otherwise agreed
|
||
# upon. The license for this file, and modifications and additions to the
|
||
# file, is the same license as for the pristine package itself (unless the
|
||
# license for the pristine package is not an Open Source License, in which
|
||
# case the license is the MIT License). An "Open Source License" is a
|
||
# license that conforms to the Open Source Definition (Version 1.9)
|
||
# published by the Open Source Initiative.
|
||
|
||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||
#
|
||
# needssslcertforbuild
|
||
|
||
|
||
%define lname libopenvswitch-2_8-0
|
||
%ifarch aarch64 x86_64 %{ix86}
|
||
# DPDK enabled by default
|
||
%bcond_without dpdk
|
||
%else
|
||
# No DPDK support on these architectures
|
||
%bcond_with dpdk
|
||
%endif
|
||
# The testsuite is somewhat fragile for continuous testing in OBS
|
||
# but keep it here as an option
|
||
%bcond_with check
|
||
# Disable building the external kernel datapath by default
|
||
%bcond_with kmp
|
||
Name: openvswitch
|
||
Version: 2.8.1
|
||
Release: 0
|
||
Summary: A multilayer virtual network switch
|
||
# All code is Apache-2.0 except
|
||
# - lib/sflow* which is SISSL
|
||
# - utilities/bugtool which is LGPL-2.1
|
||
License: Apache-2.0 AND LGPL-2.1 AND SISSL
|
||
Group: Productivity/Networking/System
|
||
Url: http://openvswitch.org/
|
||
Source0: http://openvswitch.org/releases/openvswitch-%{version}.tar.gz
|
||
Source1: preamble
|
||
Source89: Module.supported.updates
|
||
Patch99: 0001-utilities-Add-script-to-support-DPDK-option-migratio.patch
|
||
BuildRequires: autoconf
|
||
BuildRequires: automake
|
||
BuildRequires: fdupes
|
||
BuildRequires: graphviz
|
||
BuildRequires: libcap-ng-devel
|
||
BuildRequires: libopenssl-devel
|
||
BuildRequires: libtool
|
||
BuildRequires: make
|
||
BuildRequires: pkgconfig
|
||
BuildRequires: python-devel
|
||
BuildRequires: python-six
|
||
BuildRequires: python-xml
|
||
BuildRequires: pkgconfig(openssl)
|
||
Requires: logrotate
|
||
Requires: modutils
|
||
Requires: python
|
||
# ovs-ctl / ovs-pki use /usr/bin/uuidgen:
|
||
Requires: util-linux
|
||
Requires(post): %fillup_prereq
|
||
Suggests: logrotate
|
||
Provides: openvswitch-common = %{version}
|
||
Obsoletes: openvswitch-common < %{version}
|
||
Provides: openvswitch-controller = %{version}
|
||
Obsoletes: openvswitch-controller < %{version}
|
||
# openvswitch-switch has been merged to the main package
|
||
# so we need to provide a migration path
|
||
Provides: %{name}-dpdk = %{version}
|
||
Provides: %{name}-dpdk-switch = %{version}
|
||
Provides: %{name}-switch = %{version}
|
||
Obsoletes: %{name}-dpdk < %{version}
|
||
Obsoletes: %{name}-dpdk-switch < %{version}
|
||
Obsoletes: %{name}-switch < %{version}
|
||
%{?systemd_requires}
|
||
%py_requires
|
||
%if %{with dpdk}
|
||
Requires(post): shadow
|
||
%endif
|
||
# Needed by the testsuite
|
||
%if %{with check}
|
||
BuildRequires: procps
|
||
%endif
|
||
%if %{with kmp}
|
||
Suggests: openvswitch-kmp
|
||
%endif
|
||
%if %{with dpdk}
|
||
# We need to be a bit strict with the dpdk version since
|
||
# it's very possible for DPDK to change it's API between
|
||
# releases. This version currently requires >=17.XX
|
||
BuildRequires: dpdk-devel >= 17.05
|
||
BuildRequires: libnuma-devel
|
||
BuildRequires: libpcap-devel
|
||
%endif
|
||
|
||
%description
|
||
Open vSwitch is a multilayer virtual network Ethernet switch. It is
|
||
enables network automation through programmatic extension, and
|
||
supports standard management interfaces and protocols (e.g. NetFlow,
|
||
sFlow, RSPAN, ERSPAN, CLI, LACP, 802.1ag). In addition, it supports
|
||
distribution across multiple physical servers similar to VMware’s
|
||
vNetwork distributed vswitch or Cisco’s Nexus 1000V.
|
||
|
||
%if %{with kmp}
|
||
%package kmp
|
||
Summary: Open vSwitch kernel modules
|
||
License: GPL-2.0+
|
||
Group: System/Kernel
|
||
BuildRequires: %{kernel_module_package_buildreqs}
|
||
%suse_kernel_module_package -p %{_sourcedir}/preamble ec2 xenpae vmi um
|
||
|
||
%description kmp
|
||
Kernel modules supporting the openvswitch datapath.
|
||
%endif
|
||
|
||
%package -n %{lname}
|
||
Summary: Open vSwitch core libraries
|
||
License: Apache-2.0
|
||
Group: System/Libraries
|
||
|
||
%description -n %{lname}
|
||
Contains the shared libraries used by Open vSwitch and any eventual extensions.
|
||
|
||
%package doc
|
||
Summary: Open vSwitch Documentation
|
||
License: Apache-2.0
|
||
Group: System/Libraries
|
||
BuildArch: noarch
|
||
|
||
%description doc
|
||
Contains additional documentation for the Open vSwitch
|
||
|
||
%package devel
|
||
Summary: Development files for Open vSwitch
|
||
License: Apache-2.0
|
||
Group: Development/Libraries/C and C++
|
||
Requires: %{lname} = %{version}
|
||
Provides: %{name}-dpdk-devel = %{version}
|
||
Obsoletes: %{name}-dpdk-devel < %{version}
|
||
|
||
%description devel
|
||
Devel libraries and headers for Open vSwitch.
|
||
|
||
%package ovn-central
|
||
Summary: Open Virtual Network support for Open vSwitch
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: %{name}-ovn-common
|
||
# openvswitch-ovn has been split into openvswitch-ovn-{central,common,docker,host,vtep}
|
||
Provides: %{name}-dpdk-ovn:%{_bindir}/ovn-northd
|
||
Provides: %{name}-ovn:%{_bindir}/ovn-northd
|
||
|
||
%description ovn-central
|
||
OVN, the Open Virtual Network, is a system to support virtual network
|
||
abstraction. OVN complements the existing capabilities of OVS to add
|
||
native support for virtual network abstractions, such as virtual L2 and L3
|
||
overlays and security groups.
|
||
|
||
%package ovn-host
|
||
Summary: Open Virtual Network support for Open vSwitch
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: %{name}-ovn-common
|
||
# openvswitch-ovn has been split into openvswitch-ovn-{central,common,docker,host,vtep}
|
||
Provides: %{name}-dpdk-ovn:%{_bindir}/ovn-controller
|
||
Provides: %{name}-ovn:%{_bindir}/ovn-controller
|
||
|
||
%description ovn-host
|
||
This subpackage contains the OVN host controller.
|
||
|
||
%package ovn-vtep
|
||
Summary: Open Virtual Network VTEP controller for Open vSwitch
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: %{name}-ovn-common
|
||
# openvswitch-ovn has been split into openvswitch-ovn-{central,common,docker,host,vtep}
|
||
Provides: %{name}-dpdk-ovn:%{_bindir}/ovn-controller-vtep
|
||
Provides: %{name}-ovn:%{_bindir}/ovn-controller-vtep
|
||
|
||
%description ovn-vtep
|
||
This subpackage contains the OVN VTEP (VXLAN Tunnel Endpoint) controller.
|
||
|
||
%package ovn-common
|
||
Summary: Open Virtual Network diagnostic utilities
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
# openvswitch-ovn has been split into openvswitch-ovn-{central,common,docker,host,vtep}
|
||
Provides: %{name}-dpdk-ovn = %{version}
|
||
Provides: %{name}-ovn = %{version}
|
||
Obsoletes: %{name}-dpdk-ovn < %{version}
|
||
Obsoletes: %{name}-ovn < %{version}
|
||
|
||
%description ovn-common
|
||
Utilities that are used to diagnose and manage the OVN components.
|
||
|
||
%package ovn-docker
|
||
Summary: Docker network plugins for OVN
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: %{name}-ovn-common = %{version}
|
||
Requires: python-openvswitch = %{version}
|
||
# openvswitch-ovn has been split into openvswitch-ovn-{central,common,docker,host,vtep}
|
||
Provides: %{name}-dpdk-ovn:%{_bindir}/ovn-docker-overlay-driver
|
||
Provides: %{name}-ovn:%{_bindir}/ovn-docker-overlay-driver
|
||
|
||
%description ovn-docker
|
||
Docker network plugins for OVN.
|
||
|
||
%package pki
|
||
Summary: Open vSwitch public key infrastructure dependency package
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Provides: %{name}-dpdk-pki = %{version}
|
||
Obsoletes: %{name}-dpdk-pki < %{version}
|
||
|
||
%description pki
|
||
openvswitch-pki provides PKI (public key infrastructure) support for
|
||
Open vSwitch switches and controllers, reducing the risk of
|
||
man-in-the-middle attacks on the Open vSwitch network infrastructure.
|
||
|
||
Open vSwitch is a full-featured software-based Ethernet switch.
|
||
|
||
%package vtep
|
||
Summary: Open vSwitch VTEP emulator
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: %{name}-switch = %{version}
|
||
# Since openvswitch/scripts/ovs-vtep requires various ovs python modules.
|
||
Requires: python-openvswitch = %{version}
|
||
Provides: %{name}-dpdk-vtep = %{version}
|
||
Obsoletes: %{name}-dpdk-vtep < %{version}
|
||
|
||
%description vtep
|
||
A VTEP (VXLAN Tunnel EndPoint) emulator that uses Open vSwitch for
|
||
forwarding.
|
||
|
||
Open vSwitch is a full-featured software-based Ethernet switch.
|
||
|
||
%package -n python-openvswitch
|
||
Summary: Python bindings for Open vSwitch
|
||
License: Python-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: openvswitch-common = %{version}
|
||
Requires: python
|
||
Requires: python-six
|
||
|
||
%description -n python-openvswitch
|
||
This package contains the Python bindings for Open vSwitch database.
|
||
|
||
%package -n python-openvswitch-test
|
||
Summary: Python bindings for Open vSwitch
|
||
License: Python-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: openvswitch-common = %{version}
|
||
Requires: python
|
||
Requires: python-openvswitch = %{version}
|
||
Requires: python-twisted
|
||
|
||
%description -n python-openvswitch-test
|
||
This package contains the Python bindings for Open vSwitch database.
|
||
|
||
%package test
|
||
Summary: Open vSwitch test package
|
||
License: Apache-2.0
|
||
Group: Productivity/Networking/System
|
||
Requires: %{name} = %{version}
|
||
Requires: python
|
||
Requires: python-argparse
|
||
Requires: python-openvswitch-test = %{version}
|
||
Requires: python-twisted
|
||
Provides: %{name}-dpdk-test = %{version}
|
||
Obsoletes: %{name}-dpdk-test < %{version}
|
||
|
||
%description test
|
||
Open vSwitch is a software-based Ethernet switch.
|
||
|
||
This package contains utilities that are useful to diagnose
|
||
performance and connectivity issues in Open vSwitch setup.
|
||
|
||
%prep
|
||
%setup -q -n openvswitch-%{version}
|
||
%patch99 -p1
|
||
|
||
%build
|
||
set -- * .travis* .mailmap
|
||
mkdir source
|
||
mv "$@" source/
|
||
mkdir obj
|
||
|
||
pushd source
|
||
# only call boot.sh for distros with autoconf >= 2.64
|
||
bash -x boot.sh
|
||
popd
|
||
%if %{with kmp}
|
||
export EXTRA_CFLAGS='-DVERSION=\"%{version}\"'
|
||
for flavor in %{flavors_to_build}; do
|
||
rm -rf obj/$flavor
|
||
cp -r source obj/$flavor
|
||
cp -a %{SOURCE89} obj/$flavor/datapath/linux/Module.supported
|
||
pushd obj/$flavor
|
||
%configure \
|
||
--with-logdir=%{_localstatedir}/log/openvswitch \
|
||
--with-linux=%{_prefix}/src/linux-obj/%{_target_cpu}/$flavor \
|
||
--with-linux-source=%{_prefix}/src/linux
|
||
cd datapath/linux
|
||
make %{?_smp_mflags}
|
||
popd
|
||
done
|
||
%endif
|
||
|
||
pushd source
|
||
|
||
%if %{with dpdk}
|
||
dpdk_opt="--with-dpdk"
|
||
%endif
|
||
|
||
%{_bindir}/perl build-aux/dpdkstrip.pl \
|
||
%if %{with dpdk}
|
||
--dpdk \
|
||
%else
|
||
--nodpdk \
|
||
%endif
|
||
< rhel/usr_lib_systemd_system_ovs-vswitchd.service.in \
|
||
> rhel/usr_lib_systemd_system_ovs-vswitchd.service
|
||
|
||
%configure \
|
||
--disable-static \
|
||
--enable-libcapng \
|
||
--enable-shared \
|
||
--enable-ssl \
|
||
${dpdk_opt} \
|
||
--with-logdir=%{_localstatedir}/log/openvswitch
|
||
make %{?_smp_mflags}
|
||
popd
|
||
|
||
%check
|
||
%if %{with check}
|
||
pushd source
|
||
# Recheck tests before we declare them broken. If that fails, dump
|
||
# the log and exit. >2.5.0 uses the RECHECK env variable so this
|
||
# needs to be taken into consideration for future releases.
|
||
if ! make check TESTSUITEFLAGS="%{?_smp_mflags}" &&
|
||
! make check TESTSUITEFLAGS='--recheck'; then
|
||
cat tests/testsuite.log
|
||
exit 1
|
||
fi
|
||
popd
|
||
%endif
|
||
|
||
%install
|
||
%if %{with kmp}
|
||
export NO_BRP_STALE_LINK_ERROR=yes
|
||
export INSTALL_MOD_PATH=%{buildroot}
|
||
export INSTALL_MOD_DIR=updates
|
||
export BRP_PESIGN_FILES="*.ko /lib/firmware"
|
||
for flavor in %{flavors_to_build}; do
|
||
pushd obj/$flavor/datapath/linux
|
||
make -C %{_prefix}/src/linux-obj/%{_target_cpu}/$flavor modules_install M=$PWD
|
||
popd
|
||
done
|
||
%endif
|
||
|
||
pushd source
|
||
|
||
%make_install
|
||
|
||
for service in openvswitch ovn-controller ovn-controller-vtep \
|
||
ovn-northd ovsdb-server ovs-vswitchd; do
|
||
install -D -m 644 rhel/usr_lib_systemd_system_${service}.service \
|
||
%{buildroot}%{_unitdir}/${service}.service
|
||
ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc${service}
|
||
done
|
||
|
||
%if %{with dpdk}
|
||
install -p -D -m 0644 rhel/usr_lib_udev_rules.d_91-vfio.rules \
|
||
%{buildroot}%{_prefix}/lib/udev/rules.d/91-vfio.rules
|
||
%endif
|
||
|
||
install -D -m 644 rhel/usr_share_openvswitch_scripts_systemd_sysconfig.template \
|
||
%{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.openvswitch
|
||
|
||
install -d -m 755 %{buildroot}%{_sysconfdir}/logrotate.d
|
||
install -d -m 755 %{buildroot}%{_localstatedir}/log/openvswitch
|
||
|
||
install -p -D -m 0644 rhel/etc_openvswitch_default.conf \
|
||
%{buildroot}/%{_sysconfdir}/openvswitch/default.conf
|
||
install -m 644 rhel/etc_logrotate.d_openvswitch \
|
||
%{buildroot}%{_sysconfdir}/logrotate.d/openvswitch
|
||
install -d -m 755 %{buildroot}%{_sysconfdir}/profile.d
|
||
|
||
install -m 644 vswitchd/vswitch.ovsschema \
|
||
%{buildroot}%{_datadir}/openvswitch/vswitch.ovsschema
|
||
|
||
# firewalld
|
||
install -d %{buildroot}%{_prefix}/lib/firewalld/services/
|
||
install -p -m 0644 rhel/usr_lib_firewalld_services_ovn-central-firewall-service.xml \
|
||
%{buildroot}%{_prefix}/lib/firewalld/services/ovn-central-firewall-service.xml
|
||
install -p -m 0644 rhel/usr_lib_firewalld_services_ovn-host-firewall-service.xml \
|
||
%{buildroot}%{_prefix}/lib/firewalld/services/ovn-host-firewall-service.xml
|
||
|
||
# Copy documentation. The git archive builds also contain non rst files
|
||
# to make sure we clean everything we don't need.
|
||
find Documentation/ -type f ! -name '*.rst' -delete
|
||
find Documentation/ -type d -empty -delete
|
||
pushd Documentation/
|
||
mkdir -p %{buildroot}%{_docdir}/%{name}
|
||
cp -r * %{buildroot}%{_docdir}/%{name}
|
||
popd
|
||
|
||
# DPDK migration script
|
||
install -m 755 utilities/ovs-dpdk-migrate-2.6.sh %{buildroot}/%{_datadir}/openvswitch/scripts/
|
||
|
||
popd
|
||
|
||
mkdir -p %{buildroot}%{py_sitedir}
|
||
mv %{buildroot}%{_datadir}/openvswitch/python/* %{buildroot}%{py_sitedir}
|
||
rmdir %{buildroot}%{_datadir}/openvswitch/python
|
||
|
||
find %{buildroot} -type f -name "*.la" -delete -print
|
||
|
||
%fdupes %{buildroot}%{py_sitedir}
|
||
|
||
%post
|
||
/sbin/ldconfig
|
||
%{fillup_only -n openvswitch}
|
||
if grep -q ^DPDK_OPTIONS= %{_sysconfdir}/sysconfig/openvswitch &> /dev/null; then
|
||
cat >> %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release}-something << EOF
|
||
WARNING! DPDK options are now part of the Open vSwitch database. Please see
|
||
https://github.com/openvswitch/ovs/blob/branch-2.7/Documentation/intro/install/dpdk.rst
|
||
|
||
The Open vSwitch systemd service will try to migrate your %{_sysconfdir}/sysconfig/openvswitch
|
||
DPDK settings to the OvS database the next time it's restarted but you should check the result
|
||
using 'ovs-vsctl list Open_vSwitch' or something similar.
|
||
|
||
Please remember to remove the DPDK_OPTIONS variable from %{_sysconfdir}/sysconfig/openvswitch
|
||
to avoid seeing this warning again.
|
||
EOF
|
||
fi
|
||
|
||
if [ $1 -eq 1 ]; then
|
||
getent passwd openvswitch >/dev/null || \
|
||
useradd -r -d / -s /sbin/nologin -U -c "Open vSwitch Daemons" openvswitch
|
||
sed -i 's:^#OVS_USER_ID=:OVS_USER_ID=:' %{_sysconfdir}/sysconfig/openvswitch
|
||
|
||
%if %{with dpdk}
|
||
getent group hugetlbfs >/dev/null || \
|
||
groupadd hugetlbfs
|
||
usermod -a -G hugetlbfs openvswitch
|
||
sed -i \
|
||
's@OVS_USER_ID="openvswitch:openvswitch"@OVS_USER_ID="openvswitch:hugetlbfs"@'\
|
||
%{_sysconfdir}/sysconfig/openvswitch
|
||
%endif
|
||
# In the case of upgrade, this is not needed
|
||
chown -R openvswitch:openvswitch %{_sysconfdir}/openvswitch
|
||
fi
|
||
|
||
%service_add_post ovsdb-server.service
|
||
%service_add_post ovs-vswitchd.service
|
||
%service_add_post openvswitch.service
|
||
|
||
%postun
|
||
/sbin/ldconfig
|
||
# Do not restart the openvswitch service on package updates.
|
||
# Restarting the service may break the existing network state.
|
||
# For example, openflow rules are not automatically re-installed
|
||
# after an OvS update if no SDN controller is used. Moreover, restaring
|
||
# the OvS can break remote administration during the update so let the
|
||
# admin decide when it's the best time for an OvS restart.
|
||
# 5771f476573445710834234a6a9f7bd999a027e7 ("fedora: do not restart the service on a pkg upgrade")
|
||
export DISABLE_RESTART_ON_UPDATE=yes
|
||
%service_del_postun ovsdb-server.service
|
||
%service_del_postun ovs-vswitchd.service
|
||
%service_del_postun openvswitch.service
|
||
|
||
%pre
|
||
# This prevents networking breakages on package removals
|
||
export DISABLE_STOP_ON_REMOVAL=yes
|
||
%service_add_pre ovsdb-server.service
|
||
%service_add_pre ovs-vswitchd.service
|
||
%service_add_pre openvswitch.service
|
||
|
||
%preun
|
||
%service_del_preun ovsdb-server.service
|
||
%service_del_preun ovs-vswitchd.service
|
||
%service_del_preun openvswitch.service
|
||
|
||
%post -n %{lname} -p /sbin/ldconfig
|
||
%postun -n %{lname} -p /sbin/ldconfig
|
||
%pre ovn-central
|
||
%service_add_pre ovn-northd.service
|
||
|
||
%pre ovn-host
|
||
%service_add_pre ovn-controller.service
|
||
|
||
%pre ovn-vtep
|
||
%service_add_pre ovn-controller-vtep.service
|
||
|
||
%post ovn-central
|
||
%service_add_post ovn-northd.service
|
||
|
||
%post ovn-host
|
||
%service_add_post ovn-controller.service
|
||
|
||
%post ovn-vtep
|
||
%service_add_post ovn-controller-vtep.service
|
||
|
||
%preun ovn-central
|
||
%service_del_preun ovn-northd.service
|
||
|
||
%preun ovn-host
|
||
%service_del_preun ovn-controller.service
|
||
|
||
%preun ovn-vtep
|
||
%service_del_preun ovn-controller-vtep.service
|
||
|
||
%postun ovn-central
|
||
# 44dd4cc49c8a4f9413baa822f111686fd8964160 ("fedora: do not restart ovn svcs
|
||
# automatically on pkg upgrade")
|
||
export DISABLE_RESTART_ON_UPDATE=yes
|
||
%service_del_postun ovn-northd.service
|
||
|
||
%postun ovn-host
|
||
# 44dd4cc49c8a4f9413baa822f111686fd8964160 ("fedora: do not restart ovn svcs
|
||
# automatically on pkg upgrade")
|
||
export DISABLE_RESTART_ON_UPDATE=yes
|
||
%service_del_postun ovn-controller.service
|
||
|
||
%postun ovn-vtep
|
||
# 44dd4cc49c8a4f9413baa822f111686fd8964160 ("fedora: do not restart ovn svcs
|
||
# automatically on pkg upgrade")
|
||
export DISABLE_RESTART_ON_UPDATE=yes
|
||
%service_del_postun ovn-controller-vtep.service
|
||
|
||
%preun test
|
||
%stop_on_removal openvswitch-testcontroller
|
||
|
||
%postun test
|
||
%restart_on_update openvswitch-testcontroller
|
||
|
||
%post vtep -p /sbin/ldconfig
|
||
%postun vtep -p /sbin/ldconfig
|
||
|
||
%files
|
||
%{_bindir}/ovs-appctl
|
||
%{_bindir}/ovs-docker
|
||
%{_bindir}/ovs-dpctl
|
||
%{_bindir}/ovs-dpctl-top
|
||
%{_bindir}/ovs-ofctl
|
||
%{_bindir}/ovs-parse-backtrace
|
||
%{_bindir}/ovs-vsctl
|
||
%{_bindir}/ovsdb-client
|
||
%{_bindir}/ovsdb-tool
|
||
%{_sbindir}/ovs-bugtool
|
||
%{_sbindir}/ovs-vlan-bug-workaround
|
||
%{_sbindir}/ovs-vswitchd
|
||
%{_sbindir}/ovsdb-server
|
||
%dir %{_datadir}/openvswitch
|
||
%dir %{_datadir}/openvswitch/scripts
|
||
%{_datadir}/openvswitch/bugtool-plugins
|
||
%{_datadir}/openvswitch/scripts/ovs-bugtool-*
|
||
%{_datadir}/openvswitch/scripts/ovs-check-dead-ifs
|
||
%{_datadir}/openvswitch/scripts/ovs-ctl
|
||
%{_datadir}/openvswitch/scripts/ovs-lib
|
||
%{_datadir}/openvswitch/scripts/ovs-save
|
||
%{_datadir}/openvswitch/scripts/ovs-dpdk-migrate-2.6.sh
|
||
%{_datadir}/openvswitch/vswitch.ovsschema
|
||
%{_mandir}/man1/ovsdb-client.1%{ext_man}
|
||
%{_mandir}/man1/ovsdb-server.1%{ext_man}
|
||
%{_mandir}/man1/ovsdb-tool.1%{ext_man}
|
||
%{_mandir}/man5/ovs-vswitchd.conf.db.5%{ext_man}
|
||
%{_mandir}/man7/ovs-fields.7%{ext_man}
|
||
%{_mandir}/man8/ovs-appctl.8%{ext_man}
|
||
%{_mandir}/man8/ovs-bugtool.8%{ext_man}
|
||
%{_mandir}/man8/ovs-ctl.8%{ext_man}
|
||
%{_mandir}/man8/ovs-dpctl-top.8%{ext_man}
|
||
%{_mandir}/man8/ovs-dpctl.8%{ext_man}
|
||
%{_mandir}/man8/ovs-ofctl.8%{ext_man}
|
||
%{_mandir}/man8/ovs-vlan-bug-workaround.8%{ext_man}
|
||
%{_mandir}/man8/ovs-parse-backtrace.8%{ext_man}
|
||
%{_mandir}/man8/ovs-vsctl.8%{ext_man}
|
||
%{_mandir}/man8/ovs-vswitchd.8%{ext_man}
|
||
%{_sysconfdir}/bash_completion.d/ovs-appctl-bashcomp.bash
|
||
%{_sysconfdir}/bash_completion.d/ovs-vsctl-bashcomp.bash
|
||
%dir %{_sysconfdir}/openvswitch
|
||
%config(noreplace) %{_sysconfdir}/openvswitch/default.conf
|
||
%config %ghost %{_sysconfdir}/openvswitch/conf.db
|
||
%config %ghost %{_sysconfdir}/openvswitch/system-id.conf
|
||
%config(noreplace) %{_sysconfdir}/logrotate.d/openvswitch
|
||
%{_sbindir}/rcovsdb-server
|
||
%{_sbindir}/rcovs-vswitchd
|
||
%{_sbindir}/rcopenvswitch
|
||
%{_unitdir}/openvswitch.service
|
||
%{_unitdir}/ovs-vswitchd.service
|
||
%{_unitdir}/ovsdb-server.service
|
||
%{_localstatedir}/adm/fillup-templates/sysconfig.openvswitch
|
||
%dir %{_localstatedir}/log/openvswitch
|
||
%if %{with dpdk}
|
||
%{_prefix}/lib/udev/rules.d/91-vfio.rules
|
||
%endif
|
||
|
||
%files doc
|
||
%exclude %{_docdir}/AUTHORS.rst
|
||
%exclude %{_docdir}/CONTRIBUTING.rst
|
||
%exclude %{_docdir}COPYING
|
||
%exclude %{_docdir}/NEWS
|
||
%exclude %{_docdir}/NOTICE
|
||
%exclude %{_docdir}/README.rst
|
||
%{_docdir}/%{name}/
|
||
|
||
%files -n %{lname}
|
||
%{_libdir}/libofproto-2*.so.*
|
||
%{_libdir}/libopenvswitch-2*.so.*
|
||
%{_libdir}/libovsdb-2*.so.*
|
||
%{_libdir}/libsflow-2*.so.*
|
||
%{_libdir}/libovn-2*.so.*
|
||
%{_libdir}/libvtep-2*.so.*
|
||
|
||
%files pki
|
||
%{_mandir}/man8/ovs-pki.8%{ext_man}
|
||
%{_bindir}/ovs-pki
|
||
|
||
%files vtep
|
||
%{_bindir}/vtep-ctl
|
||
%{_mandir}/man5/vtep.5%{ext_man}
|
||
%{_mandir}/man8/vtep-ctl.8%{ext_man}
|
||
%{_datadir}/openvswitch/scripts/ovs-vtep
|
||
%{_datadir}/openvswitch/vtep.ovsschema
|
||
|
||
%files -n python-openvswitch
|
||
%{py_sitedir}/ovs/
|
||
|
||
%files -n python-openvswitch-test
|
||
%{py_sitedir}/ovstest/
|
||
|
||
%files ovn-docker
|
||
%{_bindir}/ovn-docker-overlay-driver
|
||
%{_bindir}/ovn-docker-underlay-driver
|
||
|
||
%files ovn-common
|
||
%{_bindir}/ovn-nbctl
|
||
%{_bindir}/ovn-sbctl
|
||
%{_bindir}/ovn-trace
|
||
%{_bindir}/ovn-detrace
|
||
%{_datadir}/openvswitch/scripts/ovn-ctl
|
||
%{_datadir}/openvswitch/scripts/ovndb-servers.ocf
|
||
%{_datadir}/openvswitch/scripts/ovn-bugtool-nbctl-show
|
||
%{_datadir}/openvswitch/scripts/ovn-bugtool-sbctl-lflow-list
|
||
%{_datadir}/openvswitch/scripts/ovn-bugtool-sbctl-show
|
||
%{_mandir}/man5/ovn-nb.5%{ext_man}
|
||
%{_mandir}/man5/ovn-sb.5%{ext_man}
|
||
%{_mandir}/man1/ovn-detrace.1*
|
||
%{_mandir}/man7/ovn-architecture.7%{ext_man}
|
||
%{_mandir}/man8/ovn-ctl.8%{ext_man}
|
||
%{_mandir}/man8/ovn-nbctl.8%{ext_man}
|
||
%{_mandir}/man8/ovn-trace.8%{ext_man}
|
||
%{_mandir}/man8/ovn-sbctl.8%{ext_man}
|
||
|
||
%files ovn-central
|
||
%dir %{_libexecdir}/firewalld
|
||
%dir %{_libexecdir}/firewalld/services
|
||
%{_bindir}/ovn-northd
|
||
%{_mandir}/man8/ovn-northd.8%{ext_man}
|
||
%config %{_datadir}/openvswitch/ovn-nb.ovsschema
|
||
%config %{_datadir}/openvswitch/ovn-sb.ovsschema
|
||
%{_unitdir}/ovn-northd.service
|
||
%{_sbindir}/rcovn-northd
|
||
%{_prefix}/lib/firewalld/services/ovn-central-firewall-service.xml
|
||
|
||
%files ovn-host
|
||
%dir %{_libexecdir}/firewalld
|
||
%dir %{_libexecdir}/firewalld/services
|
||
%{_bindir}/ovn-controller
|
||
%{_mandir}/man8/ovn-controller.8%{ext_man}
|
||
%{_unitdir}/ovn-controller.service
|
||
%{_sbindir}/rcovn-controller
|
||
%{_prefix}/lib/firewalld/services/ovn-host-firewall-service.xml
|
||
|
||
%files ovn-vtep
|
||
%{_bindir}/ovn-controller-vtep
|
||
%{_mandir}/man8/ovn-controller-vtep.8%{ext_man}
|
||
%{_unitdir}/ovn-controller-vtep.service
|
||
%{_sbindir}/rcovn-controller-vtep
|
||
|
||
%files test
|
||
%{_bindir}/ovs-l3ping
|
||
%{_bindir}/ovs-pcap
|
||
%{_bindir}/ovs-test
|
||
%{_bindir}/ovs-testcontroller
|
||
%{_bindir}/ovs-tcpdump
|
||
%{_bindir}/ovs-tcpundump
|
||
%{_bindir}/ovs-vlan-test
|
||
%{_mandir}/man1/ovs-pcap.1%{ext_man}
|
||
%{_mandir}/man1/ovs-tcpundump.1%{ext_man}
|
||
%{_mandir}/man8/ovs-l3ping.8%{ext_man}
|
||
%{_mandir}/man8/ovs-tcpdump.8%{ext_man}
|
||
%{_mandir}/man8/ovs-testcontroller.8%{ext_man}
|
||
|
||
%files devel
|
||
%{_libdir}/libofproto.so
|
||
%{_libdir}/libopenvswitch.so
|
||
%{_libdir}/libovn.so
|
||
%{_libdir}/libovsdb.so
|
||
%{_libdir}/libsflow.so
|
||
%{_libdir}/libvtep.so
|
||
%{_includedir}/openflow/
|
||
%{_includedir}/ovn/
|
||
%{_includedir}/openvswitch/
|
||
%{_libdir}/pkgconfig/*.pc
|
||
|
||
%changelog
|