From dbc1de3515fb50c9b2f6c80907510633355fc7f08dda97928f09bb641d0e0eca Mon Sep 17 00:00:00 2001 From: Lars Vogdt Date: Fri, 20 May 2011 19:19:18 +0000 Subject: [PATCH] Accepting request 70540 from home:anubisg1:branches:network spec file clean up, added the proper dependencies adding python functions and upstream version 1.1.0 (previous was 1.1.0 pre15), python-pyside is optional, re-enabled kmp packages OBS-URL: https://build.opensuse.org/request/show/70540 OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=3 --- ...h => openvswitch-1.1.0-stp-fwd-delay.patch | 22 +- openvswitch-1.1.0-suse.patch | 23 ++ openvswitch-1.1.0.tar.bz2 | 4 +- openvswitch.changes | 17 +- openvswitch.spec | 301 +++++++++--------- ovs-suse.patch | 186 ----------- 6 files changed, 190 insertions(+), 363 deletions(-) rename stp-fwd-delay.patch => openvswitch-1.1.0-stp-fwd-delay.patch (59%) create mode 100644 openvswitch-1.1.0-suse.patch delete mode 100644 ovs-suse.patch diff --git a/stp-fwd-delay.patch b/openvswitch-1.1.0-stp-fwd-delay.patch similarity index 59% rename from stp-fwd-delay.patch rename to openvswitch-1.1.0-stp-fwd-delay.patch index 7a8a206..2b02720 100644 --- a/stp-fwd-delay.patch +++ b/openvswitch-1.1.0-stp-fwd-delay.patch @@ -1,19 +1,7 @@ -brcompat: add stp and forwarding delay call stubs to brcompat layer - -From: Patrick Mullaney - -libvirt and various startup scripts like to set these 2 attributes ---- - - datapath/brcompat.c | 19 +++++++++++++++++++ - 1 files changed, 19 insertions(+), 0 deletions(-) - - -diff --git a/datapath/brcompat.c b/datapath/brcompat.c -index f23db93..eefb7c3 100644 ---- a/datapath/brcompat.c -+++ b/datapath/brcompat.c -@@ -310,6 +310,19 @@ nla_put_failure: +diff -uNr old-openvswitch-1.1.0//datapath/brcompat.c openvswitch-1.1.0/datapath/brcompat.c +--- old-openvswitch-1.1.0//datapath/brcompat.c 2011-04-07 17:41:17.000000000 +0200 ++++ openvswitch-1.1.0/datapath/brcompat.c 2011-05-17 13:34:26.015407719 +0200 +@@ -308,6 +308,19 @@ return -ENOMEM; } @@ -33,7 +21,7 @@ index f23db93..eefb7c3 100644 /* Legacy ioctl's through SIOCDEVPRIVATE. Called with rtnl_lock. */ static int old_dev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) { -@@ -333,6 +346,12 @@ static int old_dev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) +@@ -331,6 +344,12 @@ case BRCTL_GET_FDB_ENTRIES: return brc_get_fdb_entries(dev, (void __user *)args[1], args[2], args[3]); diff --git a/openvswitch-1.1.0-suse.patch b/openvswitch-1.1.0-suse.patch new file mode 100644 index 0000000..f69b9f1 --- /dev/null +++ b/openvswitch-1.1.0-suse.patch @@ -0,0 +1,23 @@ +diff -uNr old-openvswitch-1.1.0//xenserver/automake.mk openvswitch-1.1.0/xenserver/automake.mk +--- old-openvswitch-1.1.0//xenserver/automake.mk 2011-05-17 13:36:17.041407719 +0200 ++++ openvswitch-1.1.0/xenserver/automake.mk 2011-05-17 13:37:30.827407720 +0200 +@@ -27,4 +27,5 @@ + xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync \ + xenserver/usr_share_openvswitch_scripts_sysconfig.template \ + xenserver/usr_share_openvswitch_scripts_xen-bugtool-tc-class-show \ ++ xenserver/etc_sysconfig_openvswitch \ + xenserver/uuid.py +diff -uNr old-openvswitch-1.1.0//xenserver/etc_sysconfig_openvswitch openvswitch-1.1.0/xenserver/etc_sysconfig_openvswitch +--- old-openvswitch-1.1.0//xenserver/etc_sysconfig_openvswitch 1970-01-01 01:00:00.000000000 +0100 ++++ openvswitch-1.1.0/xenserver/etc_sysconfig_openvswitch 2011-05-17 13:40:26.280407720 +0200 +@@ -0,0 +1,10 @@ ++### Configuration options for openvswitch ++ ++# Copyright (C) 2009, 2010 Nicira Networks, Inc. ++# ++# Copying and distribution of this file, with or without modification, ++# are permitted in any medium without royalty provided the copyright ++# notice and this notice are preserved. This file is offered as-is, ++# without warranty of any kind. ++ ++NETWORK_MODE=openvswitch diff --git a/openvswitch-1.1.0.tar.bz2 b/openvswitch-1.1.0.tar.bz2 index c6e87e8..9ca354b 100644 --- a/openvswitch-1.1.0.tar.bz2 +++ b/openvswitch-1.1.0.tar.bz2 @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1e841d16998eda1b295141b0f1b31df05947149eb62988c71154ab0dfaed6c0 -size 905812 +oid sha256:f530c58ef24190b20b14972685de0c3d5764bee2d7a7ce1c895f57d2bc8b01f8 +size 1294444 diff --git a/openvswitch.changes b/openvswitch.changes index ec58a86..734af98 100644 --- a/openvswitch.changes +++ b/openvswitch.changes @@ -1,10 +1,25 @@ +------------------------------------------------------------------- +Wed May 18 10:09:45 UTC 2011 - andrea@opensuse.org + +- re-enabled kmp package since openvswitch_mod.ko and + brcompat_mod.ko are not available on suse kernel rpms + +------------------------------------------------------------------- +Tue May 17 12:04:05 UTC 2011 - andrea@opensuse.org + +- new upstream version 1.1.0 (stable) +- spec file clean up +- added as dependency all python modules to enable additional + functionalities +- rebase patches +- build pyside support only if pyside is available + ------------------------------------------------------------------- Fri Dec 31 15:26:59 UTC 2010 - pmullaney@novell.com - updates for build issues - fixes for libvirt integration - ------------------------------------------------------------------- Sat Dec 11 19:57:28 UTC 2010 - pmullaney@novell.com diff --git a/openvswitch.spec b/openvswitch.spec index 6bc485c..d39aa9d 100644 --- a/openvswitch.spec +++ b/openvswitch.spec @@ -1,28 +1,76 @@ +# +# spec file for package +# +# Copyright (c) 2010 SUSE LINUX Products 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/ +# + # norootforbuild -Name: openvswitch -Summary: Utilities for configuring vswitch -Version: 1.1.0 -License: GPL v2 or later -Release: 0 -Group: Productivity/Networking/System -URL: http://openvswitch.org/releases/ -Source: %{name}-%{version}.tar.bz2 -BuildRoot: %{_tmppath}/%{name}-%{version}-root -Requires: logrotate -BuildRequires: openssl libopenssl-devel python-base ncurses-devel pcre-devel pkg-config pcre-devel pyxml -Patch0: ovs-suse.patch -Patch1: stp-fwd-delay.patch # build the kmp for opensuse 11.3 and earlier, openvswitch went upstream after -%if 0%{?suse_version} <= 1130 +#%if 0%{?suse_version} <= 1130 %define build_kmp 1 -%endif +#%endif -%description -virtual switching for the large scale data center virtualization environment +%bcond_with pyside + +Name: openvswitch +Version: 1.1.0 +Release: 1 +License: Apache +Summary: An open source, production quality, multilayer virtual switch +Url: http://openswitch.org +Group: Productivity/Networking/System +Source0: %name-%version.tar.bz2 +Patch0: %name-1.1.0-suse.patch +Patch1: %name-1.1.0-stp-fwd-delay.patch +BuildRequires: gcc +BuildRequires: make +BuildRequires: pkg-config +BuildRequires: perl +BuildRequires: glibc-devel +BuildRequires: openssl libopenssl-devel +BuildRequires: valgrind-devel +BuildRequires: graphviz +BuildRequires: python-devel +BuildRequires: python-qt4-devel +BuildRequires: python-twisted +BuildRequires: python-simplejson +BuildRequires: python-zopeinterface +%if %{with pyside} +BuildRequires: python-pyside +Requires: python-pyside +%endif +Requires: python-qt4 +Requires: python-twisted +Requires: python-simplejson +Requires: python-zopeinterface +Requires: openssl +Requires: graphviz +Requires: logrotate +%py_requires +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +Open vSwitch is a production quality, multilayer virtual switch licensed under +the open source Apache 2.0 license. It is designed to enable massive network automation +through programmatic extension, while still supporting standard management interfaces +and protocols (e.g. NetFlow, sFlow, RSPAN, ERSPAN, CLI, LACP, 802.1ag). In addition, +it is designed to support distribution across multiple physical servers similar to +VMware’s vNetwork distributed vswitch or Cisco’s Nexus 1000V. %if 0%{?build_kmp} -%package -n openvswitch-KMP +%package -n %{name}-KMP Group: Productivity/Networking/System License: GPL v2 or later Summary: Kernel module @@ -30,31 +78,34 @@ Requires: kernel-default kernel-desktop BuildRequires: perl-base autoconf automake libtool kernel-source kernel-syms module-init-tools %suse_kernel_module_package ec2 xen xenpae vmi um -%description -n openvswitch-KMP +%description -n %{name}-KMP Kernel modules supporting the openvswitch datapath %endif %prep -%setup +%setup -q %patch0 -p1 %patch1 -p1 -set -- * -mkdir source -mv "$@" source/ +set -- * +mkdir source +mv "$@" source/ mkdir obj - -%build + +%build pushd source bash -x boot.sh popd %if 0%{?build_kmp} export EXTRA_CFLAGS='-DVERSION=\"%version\"' -for flavor in %flavors_to_build; do +for flavor in %flavors_to_build; do rm -rf obj/$flavor cp -r source obj/$flavor pushd obj/$flavor - ./configure --enable-ssl=yes --with-logdir=/var/log --with-l26=/usr/src/linux-obj/%_target_cpu/$flavor --with-l26-source=/usr/src/linux + %configure \ + --with-logdir=/var/log \ + --with-l26=/usr/src/linux-obj/%_target_cpu/$flavor \ + --with-l26-source=/usr/src/linux cd datapath/linux-2.6 make popd @@ -62,154 +113,66 @@ done %endif ls source pushd source -%configure --enable-ssl=yes --with-logdir=/var/log +%configure \ + --with-logdir=/var/log make %{?_smp_mflags} popd %install %if 0%{?build_kmp} -export INSTALL_MOD_PATH=$RPM_BUILD_ROOT +export INSTALL_MOD_PATH=%{buildroot} export INSTALL_MOD_DIR=updates -for flavor in %flavors_to_build; do +for flavor in %flavors_to_build; do pushd obj/$flavor/datapath/linux-2.6 make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install M=$PWD popd done %endif pushd source -make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p" -install -d -m 755 $RPM_BUILD_ROOT/etc/init.d -install -d -m 755 $RPM_BUILD_ROOT/var/adm/fillup-templates -install -m 644 xenserver/etc_sysconfig_openvswitch \ - $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.openvswitch -install -m 755 xenserver/etc_init.d_openvswitch \ - $RPM_BUILD_ROOT/etc/init.d/openvswitch -install -m 755 xenserver/etc_init.d_openvswitch-xapi-update \ - $RPM_BUILD_ROOT/etc/init.d/openvswitch-xapi-update -install -d -m 755 $RPM_BUILD_ROOT/etc/sysconfig -install -d -m 755 $RPM_BUILD_ROOT/etc/logrotate.d -install -m 644 xenserver/etc_logrotate.d_openvswitch \ - $RPM_BUILD_ROOT/etc/logrotate.d/openvswitch -install -d -m 755 $RPM_BUILD_ROOT/etc/profile.d -install -m 644 xenserver/etc_profile.d_openvswitch.sh \ - $RPM_BUILD_ROOT/etc/profile.d/openvswitch.sh -install -d -m 755 $RPM_BUILD_ROOT/etc/xapi.d/plugins -install -m 755 xenserver/etc_xapi.d_plugins_openvswitch-cfg-update \ - $RPM_BUILD_ROOT/etc/xapi.d/plugins/openvswitch-cfg-update -install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts + +%makeinstall +install -d -m 755 %{buildroot}/%_sysconfdir/init.d +install -d -m 755 %{buildroot}/var/adm/fillup-templates +install -m 644 xenserver/etc_sysconfig_%{name} \ + %{buildroot}/var/adm/fillup-templates/sysconfig.%{name} +install -m 755 xenserver/etc_init.d_%{name} \ + %{buildroot}/%_sysconfdir/init.d/%{name} +install -m 755 xenserver/etc_init.d_%{name}-xapi-update \ + %{buildroot}/%_sysconfdir/init.d/%{name}-xapi-update +install -d -m 755 %{buildroot}/%_sysconfdir/sysconfig +install -d -m 755 %{buildroot}/%_sysconfdir/logrotate.d +install -m 644 xenserver/etc_logrotate.d_%{name} \ + %{buildroot}/%_sysconfdir/logrotate.d/%{name} +install -d -m 755 %{buildroot}/%_sysconfdir/profile.d +install -m 644 xenserver/etc_profile.d_%{name}.sh \ + %{buildroot}/%_sysconfdir/profile.d/%{name}.sh +install -d -m 755 %{buildroot}/%_sysconfdir/xapi.d/plugins +install -m 755 xenserver/etc_xapi.d_plugins_%{name}-cfg-update \ + %{buildroot}/%_sysconfdir/xapi.d/plugins/%{name}-cfg-update +install -d -m 755 %{buildroot}/%{_datadir}/%{name}/scripts install -m 644 vswitchd/vswitch.ovsschema \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/vswitch.ovsschema + %{buildroot}/%{_datadir}/%{name}/vswitch.ovsschema install -m 755 xenserver/opt_xensource_libexec_interface-reconfigure \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/interface-reconfigure + %{buildroot}/%{_datadir}/%{name}/scripts/interface-reconfigure install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigure.py \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/InterfaceReconfigure.py + %{buildroot}/%{_datadir}/%{name}/scripts/InterfaceReconfigure.py install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigureBridge.py \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/InterfaceReconfigureBridge.py + %{buildroot}/%{_datadir}/%{name}/scripts/InterfaceReconfigureBridge.py install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/InterfaceReconfigureVswitch.py + %{buildroot}/%{_datadir}/%{name}/scripts/InterfaceReconfigureVswitch.py install -m 755 xenserver/etc_xensource_scripts_vif \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/vif -install -m 755 xenserver/usr_share_openvswitch_scripts_ovs-external-ids \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovs-external-ids -install -m 755 xenserver/usr_share_openvswitch_scripts_refresh-xs-network-uuids \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/refresh-xs-network-uuids -install -m 755 xenserver/usr_sbin_xen-bugtool \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/xen-bugtool -install -m 755 xenserver/usr_sbin_brctl \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/brctl -install -m 644 xenserver/usr_share_openvswitch_scripts_sysconfig.template \ - $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/sysconfig.template -install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/xsconsole/plugins-base + %{buildroot}/%{_datadir}/%{name}/scripts/vif +install -m 644 xenserver/usr_share_%{name}_scripts_sysconfig.template \ + %{buildroot}/%{_datadir}/%{name}/scripts/sysconfig.template +install -d -m 755 %{buildroot}/%{_libdir}/xsconsole/plugins-base install -m 644 \ xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py \ - $RPM_BUILD_ROOT%{_libdir}/xsconsole/plugins-base/XSFeatureVSwitch.py -install -m 644 xenserver/uuid.py $RPM_BUILD_ROOT%{_datadir}/openvswitch/python + %{buildroot}/%{_libdir}/xsconsole/plugins-base/XSFeatureVSwitch.py +install -m 644 xenserver/uuid.py %{buildroot}/%{_datadir}/%{name}/python popd -# Get rid of stuff we don't want to make RPM happy. -rm \ - $RPM_BUILD_ROOT%{_bindir}/ovs-controller \ - $RPM_BUILD_ROOT%{_bindir}/ovs-discover \ - $RPM_BUILD_ROOT%{_bindir}/ovs-kill \ - $RPM_BUILD_ROOT%{_bindir}/ovs-openflowd \ - $RPM_BUILD_ROOT%{_datadir}/man/man8/ovs-controller.8 \ - $RPM_BUILD_ROOT%{_datadir}/man/man8/ovs-discover.8 \ - $RPM_BUILD_ROOT%{_datadir}/man/man8/ovs-kill.8 \ - $RPM_BUILD_ROOT%{_datadir}/man/man8/ovs-openflowd.8 \ - -%files -%defattr(-,root,root) -%{_sysconfdir}/init.d/openvswitch -%{_localstatedir}/adm/fillup-templates/sysconfig.openvswitch -%{_sysconfdir}/init.d/openvswitch-xapi-update -%{_sysconfdir}/xapi.d/plugins/openvswitch-cfg-update -%config %{_sysconfdir}/logrotate.d/openvswitch -%config %{_sysconfdir}/profile.d/openvswitch.sh -%dir %{_libdir}/xsconsole -%dir %{_libdir}/xsconsole/plugins-base -%dir %{_datadir}/openvswitch -%dir %{_datadir}/openvswitch/python -%dir %{_datadir}/openvswitch/python/ovs -%dir %{_datadir}/openvswitch/python/ovs/db -%dir %{_datadir}/openvswitch/scripts -%dir %{_sysconfdir}/xapi.d -%dir %{_sysconfdir}/xapi.d/plugins -%{_datadir}/openvswitch/python/ovs/__init__.py -%{_datadir}/openvswitch/python/ovs/daemon.py -%{_datadir}/openvswitch/python/ovs/db/__init__.py -%{_datadir}/openvswitch/python/ovs/db/data.py -%{_datadir}/openvswitch/python/ovs/db/error.py -%{_datadir}/openvswitch/python/ovs/db/idl.py -%{_datadir}/openvswitch/python/ovs/db/parser.py -%{_datadir}/openvswitch/python/ovs/db/schema.py -%{_datadir}/openvswitch/python/ovs/db/types.py -%{_datadir}/openvswitch/python/ovs/dirs.py -%{_datadir}/openvswitch/python/ovs/fatal_signal.py -%{_datadir}/openvswitch/python/ovs/json.py -%{_datadir}/openvswitch/python/ovs/jsonrpc.py -%{_datadir}/openvswitch/python/ovs/ovsuuid.py -%{_datadir}/openvswitch/python/ovs/poller.py -%{_datadir}/openvswitch/python/ovs/process.py -%{_datadir}/openvswitch/python/ovs/reconnect.py -%{_datadir}/openvswitch/python/ovs/socket_util.py -%{_datadir}/openvswitch/python/ovs/stream.py -%{_datadir}/openvswitch/python/ovs/timeval.py -%{_datadir}/openvswitch/python/ovs/util.py -%{_datadir}/openvswitch/python/uuid.py -%{_datadir}/openvswitch/scripts/ovs-external-ids -%{_datadir}/openvswitch/scripts/refresh-xs-network-uuids -%{_datadir}/openvswitch/scripts/interface-reconfigure -%{_datadir}/openvswitch/scripts/InterfaceReconfigure.py -%{_datadir}/openvswitch/scripts/InterfaceReconfigureBridge.py -%{_datadir}/openvswitch/scripts/InterfaceReconfigureVswitch.py -%{_datadir}/openvswitch/scripts/vif -%{_datadir}/openvswitch/scripts/xen-bugtool -%{_datadir}/openvswitch/scripts/brctl -%{_datadir}/openvswitch/scripts/sysconfig.template -%{_datadir}/openvswitch/vswitch.ovsschema -%{_sbindir}/ovs-brcompatd -%{_sbindir}/ovs-vswitchd -%{_sbindir}/ovsdb-server -%{_bindir}/ovs-pki -%{_bindir}/ovs-appctl -%{_bindir}/ovs-dpctl -%{_bindir}/ovs-ofctl -%{_bindir}/ovs-vsctl -%{_bindir}/ovsdb-client -%{_bindir}/ovsdb-tool -%{_libdir}/xsconsole/plugins-base/XSFeatureVSwitch.py -%{_datadir}/man/man1/ovsdb-client.1.gz -%{_datadir}/man/man1/ovsdb-server.1.gz -%{_datadir}/man/man1/ovsdb-tool.1.gz -%{_datadir}/man/man5/ovs-vswitchd.conf.db.5.gz -%{_datadir}/man/man8/ovs-pki.8.gz -%{_datadir}/man/man8/ovs-appctl.8.gz -%{_datadir}/man/man8/ovs-brcompatd.8.gz -%{_datadir}/man/man8/ovs-dpctl.8.gz -%{_datadir}/man/man8/ovs-ofctl.8.gz -%{_datadir}/man/man8/ovs-parse-leaks.8.gz -%{_datadir}/man/man8/ovs-vsctl.8.gz -%{_datadir}/man/man8/ovs-vswitchd.8.gz +%clean +%{?buildroot:%__rm -rf "%{buildroot}"} %post %{fillup_and_insserv openvswitch} @@ -217,8 +180,32 @@ rm \ %preun %stop_on_removal openvswitch +%files +%defattr(-,root,root) +%doc source/AUTHORS source/DESIGN source/INSTALL.* source/NOTICE +%doc source/REPORTING-BUGS source/ChangeLog source/PORTING +%doc source/SubmittingPatches source/CodingStyle source/README +%doc source/WHY-OVS source/COPYING source/README-gcov +%_bindir/ovs* +%_sbindir/ovs-brcompatd +%_sbindir/ovsdb-server +%_sbindir/ovs-vlan-bug-workaround +%_sbindir/ovs-vswitchd +%_datadir/%name +%_mandir/man1/* +%_mandir/man5/* +%_mandir/man8/* +%_sysconfdir/init.d/openvswitch +%_sysconfdir/init.d/openvswitch-xapi-update +%config %_sysconfdir/logrotate.d/openvswitch +%_sysconfdir/profile.d/openvswitch.sh +%dir %_sysconfdir/xapi.d +%dir %dir %_sysconfdir/xapi.d/plugins +%dir %_libdir/xsconsole/ +%dir %_libdir/xsconsole/plugins-base/ +%_sysconfdir/xapi.d/plugins/openvswitch-cfg-update +%_libdir/xsconsole/plugins-base/XSFeatureVSwitch.py +/var/adm/fillup-templates/sysconfig.openvswitch + + %changelog -# * Tue April 13 2010 pmullaney@novell.com -# - Initial Package, Version 0.99.2 -# * Sun Sept 12 2010 pmullaney@novell.com -# - Updated Package, Version 1.0.1 diff --git a/ovs-suse.patch b/ovs-suse.patch deleted file mode 100644 index 7ac6dde..0000000 --- a/ovs-suse.patch +++ /dev/null @@ -1,186 +0,0 @@ -openvswitch init script modifications for kvm and lxc hosts - -From: Patrick Mullaney - -Signed-off-by: Patrick Mullaney ---- - - xenserver/automake.mk | 1 - xenserver/etc_init.d_openvswitch | 79 +++++++++++++++++++++----- - xenserver/etc_init.d_openvswitch-xapi-update | 9 +++ - xenserver/etc_sysconfig_openvswitch | 11 ++++ - 4 files changed, 86 insertions(+), 14 deletions(-) - create mode 100644 xenserver/etc_sysconfig_openvswitch - - -diff --git a/xenserver/automake.mk b/xenserver/automake.mk -index fc23a76..a6c7989 100644 ---- a/xenserver/automake.mk -+++ b/xenserver/automake.mk -@@ -27,4 +27,5 @@ EXTRA_DIST += \ - xenserver/usr_share_openvswitch_scripts_ovs-external-ids \ - xenserver/usr_share_openvswitch_scripts_refresh-xs-network-uuids \ - xenserver/usr_share_openvswitch_scripts_sysconfig.template \ -+ xenserver/etc_sysconfig_openvswitch \ - xenserver/uuid.py -diff --git a/xenserver/etc_init.d_openvswitch b/xenserver/etc_init.d_openvswitch -index 5f18196..79de6f0 100755 ---- a/xenserver/etc_init.d_openvswitch -+++ b/xenserver/etc_init.d_openvswitch -@@ -18,13 +18,46 @@ - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. -+### BEGIN INIT INFO -+# Provides: vswitch -+# Required-Start: $local_fs -+# Required-Stop: $local_fs -+# Default-Start: 2 3 5 -+# Default-Stop: -+# Short-Description: vswitch -+# Description: virtual switch -+### END INIT INFO -+ -+#. /etc/init.d/functions -+# source function library -+if [ -f /etc/init.d/functions ]; then -+ . /etc/init.d/functions -+elif [ -f /etc/rc.d/init.d/functions ]; then -+ . /etc/rc.d/init.d/functions -+elif [ -f /lib/lsb/init-functions ]; then -+ . /lib/lsb/init-functions -+else -+ exit 0 -+fi - --. /etc/init.d/functions -+# Ugh, SUSE doesn't implement action -+action() { -+ STRING=$1 -+ shift -+ "$@" -+ rc=$? -+ if [ $rc -eq 0 ] ; then -+ log_success_msg $"$STRING " -+ else -+ log_failure_msg $"$STRING " -+ fi -+ return $rc -+} - --. /etc/xensource-inventory - test -e /etc/sysconfig/openvswitch && . /etc/sysconfig/openvswitch - --NETWORK_MODE=$(cat /etc/xensource/network.conf) -+test -e /etc/xensource-inventory && . /etc/xensource-inventory -+ - case $NETWORK_MODE in - vswitch|openvswitch) - ;; -@@ -38,14 +71,19 @@ case $NETWORK_MODE in - esac - - # General config variables in /etc/sysconfig/openvswitch --if test "$PRODUCT_VERSION" = "5.5.0"; then -- # XenServer 5.5.0 needs ovs-brcompatd and /proc/net simulation. -+if [ -f /etc/xensource-inventory ]; then -+ if test "$PRODUCT_VERSION" = "5.5.0"; then -+ # XenServer 5.5.0 needs ovs-brcompatd and /proc/net simulation. -+ : ${ENABLE_BRCOMPAT:=y} -+ : ${ENABLE_FAKE_PROC_NET:=y} -+ else -+ # Later versions don't need them. -+ : ${ENABLE_BRCOMPAT:=n} -+ : ${ENABLE_FAKE_PROC_NET:=n} -+ fi -+else - : ${ENABLE_BRCOMPAT:=y} - : ${ENABLE_FAKE_PROC_NET:=y} --else -- # Later versions don't need them. -- : ${ENABLE_BRCOMPAT:=n} -- : ${ENABLE_FAKE_PROC_NET:=n} - fi - : ${ENABLE_MONITOR:=y} - : ${FORCE_COREFILES:=y} -@@ -297,6 +335,7 @@ EOF - } - - function set_system_ids { -+ - if [ -f /etc/xensource-inventory ]; then - action "Configuring Open vSwitch system IDs" true - $vsctl --no-wait --timeout=5 set Open_vSwitch . \ -@@ -305,7 +344,17 @@ function set_system_ids { - external-ids:system-id="$INSTALLATION_UUID" \ - external-ids:xs-system-uuid="$INSTALLATION_UUID" - else -- action "Configuring Open vSwitch system IDs" false -+ -+ if [ -f /etc/openvswitch/install_uuid.conf ]; then -+ . /etc/openvswitch/install_uuid.conf -+ else -+ INSTALLATION_UUID=`uuidgen` -+ echo "INSTALLATION_UUID=$INSTALLATION_UUID" > /etc/openvswitch/install_uuid.conf -+ fi -+ $vsctl --no-wait --timeout=5 set Open_vSwitch . \ -+ external-ids:system-id="$INSTALLATION_UUID" \ -+ external-ids:xs-system-uuid="$INSTALLATION_UUID" -+ action "Configuring Open vSwitch system IDs" true - fi - } - -@@ -350,10 +399,12 @@ function start { - start_brcompatd - fi - -- # Start daemon to monitor external ids -- PYTHONPATH=/usr/share/openvswitch/python \ -- /usr/share/openvswitch/scripts/ovs-external-ids \ -- --pidfile --detach $monitor_opt "$VSWITCHD_OVSDB_SERVER" -+ if [ -f /etc/xensource-inventory ]; then -+ # Start daemon to monitor external ids -+ PYTHONPATH=/usr/share/openvswitch/python \ -+ /usr/share/openvswitch/scripts/ovs-external-ids \ -+ --pidfile --detach $monitor_opt "$VSWITCHD_OVSDB_SERVER" -+ fi - - touch /var/lock/subsys/openvswitch - } -diff --git a/xenserver/etc_init.d_openvswitch-xapi-update b/xenserver/etc_init.d_openvswitch-xapi-update -index bc62ba2..e2e8e98 100755 ---- a/xenserver/etc_init.d_openvswitch-xapi-update -+++ b/xenserver/etc_init.d_openvswitch-xapi-update -@@ -18,6 +18,15 @@ - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. -+### BEGIN INIT INFO -+# Provides: openvswitch-api-update -+# Required-Start: $network $remote_fs -+# Required-Stop: $network -+# Default-Start: 3 5 -+# Default-Stop: -+# Short-Description: openvswitch-api-update -+# Description: virtual switch-api-update -+### END INIT INFO - - . /etc/init.d/functions - -diff --git a/xenserver/etc_sysconfig_openvswitch b/xenserver/etc_sysconfig_openvswitch -new file mode 100644 -index 0000000..16f915f ---- /dev/null -+++ b/xenserver/etc_sysconfig_openvswitch -@@ -0,0 +1,11 @@ -+### Configuration options for openvswitch -+ -+# Copyright (C) 2009, 2010 Nicira Networks, Inc. -+# -+# Copying and distribution of this file, with or without modification, -+# are permitted in any medium without royalty provided the copyright -+# notice and this notice are preserved. This file is offered as-is, -+# without warranty of any kind. -+ -+NETWORK_MODE=openvswitch -+