From f8303455d3f8d477788f83801f022aef23fb2b1c4b15b0f4febdecb7778b4626 Mon Sep 17 00:00:00 2001 From: Markos Chandras Date: Thu, 24 Aug 2017 05:49:44 +0000 Subject: [PATCH 1/2] Accepting request 516264 from home:olh:branches:network - Update filename in /var/adm/update-messages to match documentation, and build-compare pattern OBS-URL: https://build.opensuse.org/request/show/516264 OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=122 --- openvswitch.changes | 6 ++++++ openvswitch.spec | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/openvswitch.changes b/openvswitch.changes index 5105e81..48add71 100644 --- a/openvswitch.changes +++ b/openvswitch.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Aug 10 15:12:23 UTC 2017 - olaf@aepfle.de + +- Update filename in /var/adm/update-messages to match documentation, + and build-compare pattern + ------------------------------------------------------------------- Thu Jul 27 13:05:42 UTC 2017 - mchandras@suse.de diff --git a/openvswitch.spec b/openvswitch.spec index 7bc2f51..e42aad5 100644 --- a/openvswitch.spec +++ b/openvswitch.spec @@ -409,7 +409,7 @@ find %{buildroot} -type f -name "*.la" -delete -print %post /sbin/ldconfig if grep -q ^DPDK_OPTIONS= %{_sysconfdir}/sysconfig/openvswitch &> /dev/null; then - cat >> %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release} << EOF + 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 From 5d00e9df7139850f90586fcdfbdfb291767981469f68c938eb98024104c74ac0 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 7 Sep 2017 18:36:43 +0000 Subject: [PATCH 2/2] Accepting request 521652 from home:markoschandras:network - Version bump to 2.8.0 (fate#323334, bsc#1050700). Some of the changes are: * ovs-ofctl can now accept and display port names in place of numbers. By default it always accepts names and in interactive use it displays them; use --names or --no-names to override. See ovs-ofctl(8) for details. * "ovs-ofctl dump-flows" now accepts --no-stats to omit flow statistics. * New ovs-dpctl command "ct-stats-show" to show connection tracking stats. * DPDK log messages redirected to OVS logging subsystem. Log level can be changed in a usual OVS way using 'ovs-appctl vlog' commands for 'dpdk' module. Lower bound still can be configured via extra arguments for DPDK EAL. * dpdkvhostuser ports are marked as deprecated. They will be removed in an upcoming release. * Support for DPDK v17.05.1. * New support for multiple VLANs (802.1ad or "QinQ"), including a new "dot1q-tunnel" port VLAN mode. * Added NAT support for userspace datapath. * Added FTP and TFTP support with NAT for userspace datapath. * Experimental NSH (Network Service Header) support in userspace datapath. * Tracing with ofproto/trace now traces through recirculation. * New support for role-based access control (see ovsdb-server(1)). * New commands 'stp/show' and 'rstp/show' (see ovs-vswitchd(8)). * All features required by OpenFlow 1.4 are now implemented, so ovs-vswitchd now enables OpenFlow 1.4 by default (in addition to OpenFlow 1.0 to 1.3). * Increased support for OpenFlow 1.6 (draft). * Bundles now support hashing by just nw_src or nw_dst. * The "learn" action now supports a "limit" option (see ovs-ofctl(8)). * The port status bit OFPPS_LIVE now reflects link aliveness. * OpenFlow 1.5 packet-out is now supported. * Support for OpenFlow 1.5 field packet_type and packet-type-aware OBS-URL: https://build.opensuse.org/request/show/521652 OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=124 --- openvswitch-2.7.2.tar.gz | 3 - openvswitch-2.8.0.tar.gz | 3 + openvswitch.changes | 60 +++++++++++++++++ openvswitch.spec | 141 ++++++++++++++++++++++++--------------- 4 files changed, 151 insertions(+), 56 deletions(-) delete mode 100644 openvswitch-2.7.2.tar.gz create mode 100644 openvswitch-2.8.0.tar.gz diff --git a/openvswitch-2.7.2.tar.gz b/openvswitch-2.7.2.tar.gz deleted file mode 100644 index a2e90ca..0000000 --- a/openvswitch-2.7.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe36c86ed52f6f7c17b01cdbb7ae37bf521cc5c2e50997b618f3f742485f655b -size 6192414 diff --git a/openvswitch-2.8.0.tar.gz b/openvswitch-2.8.0.tar.gz new file mode 100644 index 0000000..f0a2400 --- /dev/null +++ b/openvswitch-2.8.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc11c30db51b234a7aa0cb60dbd417b7e6f1b97f74e9cb8705d53fc89a749113 +size 6746217 diff --git a/openvswitch.changes b/openvswitch.changes index 48add71..3ecd2c0 100644 --- a/openvswitch.changes +++ b/openvswitch.changes @@ -1,3 +1,63 @@ +------------------------------------------------------------------- +Mon Sep 4 07:22:47 UTC 2017 - mchandras@suse.de + +- Version bump to 2.8.0 (fate#323334, bsc#1050700). Some of the changes are: + * ovs-ofctl can now accept and display port names in place of numbers. By + default it always accepts names and in interactive use it displays them; + use --names or --no-names to override. See ovs-ofctl(8) for details. + * "ovs-ofctl dump-flows" now accepts --no-stats to omit flow statistics. + * New ovs-dpctl command "ct-stats-show" to show connection tracking stats. + * DPDK log messages redirected to OVS logging subsystem. + Log level can be changed in a usual OVS way using + 'ovs-appctl vlog' commands for 'dpdk' module. Lower bound + still can be configured via extra arguments for DPDK EAL. + * dpdkvhostuser ports are marked as deprecated. They will be removed + in an upcoming release. + * Support for DPDK v17.05.1. + * New support for multiple VLANs (802.1ad or "QinQ"), including a new + "dot1q-tunnel" port VLAN mode. + * Added NAT support for userspace datapath. + * Added FTP and TFTP support with NAT for userspace datapath. + * Experimental NSH (Network Service Header) support in userspace datapath. + * Tracing with ofproto/trace now traces through recirculation. + * New support for role-based access control (see ovsdb-server(1)). + * New commands 'stp/show' and 'rstp/show' (see ovs-vswitchd(8)). + * All features required by OpenFlow 1.4 are now implemented, so + ovs-vswitchd now enables OpenFlow 1.4 by default (in addition to + OpenFlow 1.0 to 1.3). + * Increased support for OpenFlow 1.6 (draft). + * Bundles now support hashing by just nw_src or nw_dst. + * The "learn" action now supports a "limit" option (see ovs-ofctl(8)). + * The port status bit OFPPS_LIVE now reflects link aliveness. + * OpenFlow 1.5 packet-out is now supported. + * Support for OpenFlow 1.5 field packet_type and packet-type-aware + pipeline (PTAP). + * Added generic encap and decap actions (EXT-382). + First supported use case is encap/decap for Ethernet. + * Added NSH (Network Service Header) support in userspace + Used generic encap and decap actions to implement encapsulation and + decapsulation of NSH header. + IETF NSH draft - https://datatracker.ietf.org/doc/draft-ietf-sfc-nsh/ + * ovs-vswitchd and ovsdb-server run as non-root users by default. + * Add --cleanup option to command 'ovs-appctl exit' (see ovs-vswitchd(8)). + * Use new tunnel port option "packet_type" to configure L2 vs. L3. + * In conjunction with PTAP tunnel ports can handle a mix of L2 and L3 + payload. + * New vxlan tunnel extension "gpe" to support VXLAN-GPE tunnels. + * New support for non-Ethernet (L3) payloads in GRE and VXLAN-GPE. + * Add experimental support for hardware offloading + * HW offloading is disabled by default. + * HW offloading is done through the TC interface. + * The next major version of OVS will introduce a change in the + conntrack API. Conntrack state is only available to the processing + path that follows the "recirc_table" argument of the ct() action. + Starting in OVS 2.9, this state will be cleared for the current + processing path whenever ct() is called. +- Create new openvswitch-doc subpackage for the Open vSwitch documentation +- Fix filename for logrotate configuration (bsc#1057357) +- Fix constrains with Provides/Obsoletes tags (bsc#1057357) +- Misc cleanups from spec-cleaner + ------------------------------------------------------------------- Thu Aug 10 15:12:23 UTC 2017 - olaf@aepfle.de diff --git a/openvswitch.spec b/openvswitch.spec index e42aad5..4df0766 100644 --- a/openvswitch.spec +++ b/openvswitch.spec @@ -17,8 +17,7 @@ # needssslcertforbuild -# Disable building the external kernel datapath by default -%bcond_with kmp +%define lname libopenvswitch-2_8-0 %ifarch aarch64 x86_64 %{ix86} # DPDK enabled by default %bcond_without dpdk @@ -29,16 +28,16 @@ # The testsuite is somewhat fragile for continuous testing in OBS # but keep it here as an option %bcond_with check -%define lname libopenvswitch-2_7-1 - +# Disable building the external kernel datapath by default +%bcond_with kmp Name: openvswitch -Version: 2.7.2 +Version: 2.8.0 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 +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 @@ -71,15 +70,17 @@ 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}-dpdk = %{version} +Provides: %{name}-dpdk-switch = %{version} Provides: %{name}-switch = %{version} Obsoletes: %{name}-dpdk < %{version} Obsoletes: %{name}-dpdk-switch < %{version} Obsoletes: %{name}-switch < %{version} -BuildRoot: %{_tmppath}/%{name}-%{version}-build %{?systemd_requires} %py_requires +%if %{with dpdk} +Requires(post): shadow +%endif # Needed by the testsuite %if %{with check} BuildRequires: procps @@ -90,9 +91,8 @@ Suggests: openvswitch-kmp %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 >=16.07 but not -# 17.XX -BuildRequires: dpdk-devel >= 16.11 +# releases. This version currently requires >=17.XX +BuildRequires: dpdk-devel >= 17.05 BuildRequires: libnuma-devel BuildRequires: libpcap-devel %endif @@ -125,6 +125,15 @@ 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 @@ -294,28 +303,37 @@ pushd source 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 + 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" + 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 \ @@ -364,14 +382,21 @@ for service in openvswitch ovn-controller ovn-controller-vtep \ 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-switch + %{buildroot}%{_sysconfdir}/logrotate.d/openvswitch install -d -m 755 %{buildroot}%{_sysconfdir}/profile.d install -m 644 vswitchd/vswitch.ovsschema \ @@ -408,6 +433,7 @@ find %{buildroot} -type f -name "*.la" -delete -print %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 @@ -421,10 +447,27 @@ if grep -q ^DPDK_OPTIONS= %{_sysconfdir}/sysconfig/openvswitch &> /dev/null; the 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 -%{fillup_only -n openvswitch} %postun /sbin/ldconfig @@ -454,7 +497,6 @@ export DISABLE_STOP_ON_REMOVAL=yes %post -n %{lname} -p /sbin/ldconfig %postun -n %{lname} -p /sbin/ldconfig - %pre ovn-central %service_add_pre ovn-northd.service @@ -510,14 +552,6 @@ export DISABLE_RESTART_ON_UPDATE=yes %postun vtep -p /sbin/ldconfig %files -%defattr(-,root,root) -%doc source/AUTHORS.rst -%doc source/CONTRIBUTING.rst -%doc source/COPYING -%doc source/NEWS -%doc source/NOTICE -%doc source/README.rst -%{_docdir}/%{name}/ %{_bindir}/ovs-appctl %{_bindir}/ovs-docker %{_bindir}/ovs-dpctl @@ -559,9 +593,10 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_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-switch +%config(noreplace) %{_sysconfdir}/logrotate.d/openvswitch %{_sbindir}/rcovsdb-server %{_sbindir}/rcovs-vswitchd %{_sbindir}/rcopenvswitch @@ -570,9 +605,20 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_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} -%defattr(-,root,root) %{_libdir}/libofproto-2*.so.* %{_libdir}/libopenvswitch-2*.so.* %{_libdir}/libovsdb-2*.so.* @@ -581,12 +627,10 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_libdir}/libvtep-2*.so.* %files pki -%defattr(-,root,root) %{_mandir}/man8/ovs-pki.8%{ext_man} %{_bindir}/ovs-pki %files vtep -%defattr(-,root,root) %{_bindir}/vtep-ctl %{_mandir}/man5/vtep.5%{ext_man} %{_mandir}/man8/vtep-ctl.8%{ext_man} @@ -594,23 +638,20 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_datadir}/openvswitch/vtep.ovsschema %files -n python-openvswitch -%defattr(-,root,root) %{py_sitedir}/ovs/ %files -n python-openvswitch-test -%defattr(-,root,root) %{py_sitedir}/ovstest/ %files ovn-docker -%defattr(-,root,root) %{_bindir}/ovn-docker-overlay-driver %{_bindir}/ovn-docker-underlay-driver %files ovn-common -%defattr(-,root,root) %{_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 @@ -618,6 +659,7 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_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} @@ -625,7 +667,6 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_mandir}/man8/ovn-sbctl.8%{ext_man} %files ovn-central -%defattr(-,root,root) %dir %{_libexecdir}/firewalld %dir %{_libexecdir}/firewalld/services %{_bindir}/ovn-northd @@ -637,7 +678,6 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_prefix}/lib/firewalld/services/ovn-central-firewall-service.xml %files ovn-host -%defattr(-,root,root) %dir %{_libexecdir}/firewalld %dir %{_libexecdir}/firewalld/services %{_bindir}/ovn-controller @@ -647,14 +687,12 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_prefix}/lib/firewalld/services/ovn-host-firewall-service.xml %files ovn-vtep -%defattr(-,root,root) %{_bindir}/ovn-controller-vtep %{_mandir}/man8/ovn-controller-vtep.8%{ext_man} %{_unitdir}/ovn-controller-vtep.service %{_sbindir}/rcovn-controller-vtep %files test -%defattr(-,root,root) %{_bindir}/ovs-l3ping %{_bindir}/ovs-pcap %{_bindir}/ovs-test @@ -666,12 +704,9 @@ export DISABLE_RESTART_ON_UPDATE=yes %{_mandir}/man1/ovs-tcpundump.1%{ext_man} %{_mandir}/man8/ovs-l3ping.8%{ext_man} %{_mandir}/man8/ovs-tcpdump.8%{ext_man} -%{_mandir}/man8/ovs-test.8%{ext_man} %{_mandir}/man8/ovs-testcontroller.8%{ext_man} -%{_mandir}/man8/ovs-vlan-test.8%{ext_man} %files devel -%defattr(-,root,root) %{_libdir}/libofproto.so %{_libdir}/libopenvswitch.so %{_libdir}/libovn.so