X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fopenvswitch-xen.spec;h=d2433f986f5d9560a0cb4ce171ab4ca727f916c9;hb=e3648418c4bf028e6bca38bcbfc5a5ed493447fb;hp=7b5e0228e7515a8fd69a39000e1fc08f78a9382d;hpb=4e39950c21c5eb401be5924e798c570ffbd0c75b;p=openvswitch diff --git a/xenserver/openvswitch-xen.spec b/xenserver/openvswitch-xen.spec index 7b5e0228..d2433f98 100644 --- a/xenserver/openvswitch-xen.spec +++ b/xenserver/openvswitch-xen.spec @@ -81,12 +81,13 @@ install -m 755 xenserver/usr_sbin_brctl \ $RPM_BUILD_ROOT/usr/share/openvswitch/scripts/brctl install -m 755 xenserver/usr_share_openvswitch_scripts_sysconfig.template \ $RPM_BUILD_ROOT/usr/share/openvswitch/scripts/sysconfig.template +install -d -m 755 $RPM_BUILD_ROOT/usr/lib/xsconsole/plugins-base install -m 644 \ xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py \ - $RPM_BUILD_ROOT/usr/share/openvswitch/scripts/XSFeatureVSwitch.py + $RPM_BUILD_ROOT/usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.py -install -d -m 755 $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/openvswitch -find datapath/linux-2.6 -name *.ko -exec install -m 755 \{\} $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/openvswitch \; +install -d -m 755 $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/extra/openvswitch +find datapath/linux-2.6 -name *.ko -exec install -m 755 \{\} $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/extra/openvswitch \; # Get rid of stuff we don't want to make RPM happy. rm \ @@ -102,7 +103,6 @@ rm \ $RPM_BUILD_ROOT/usr/share/man/man8/ovs-kill.8 \ $RPM_BUILD_ROOT/usr/share/man/man8/ovs-openflowd.8 \ $RPM_BUILD_ROOT/usr/share/man/man8/ovs-pki.8 -rm -f $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/openvswitch/veth_mod.ko install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch @@ -114,6 +114,7 @@ if [ ! -f /etc/xensource-inventory ]; then printf "XenSource inventory not present in /etc/xensource-inventory" exit 1 fi +. /etc/xensource-inventory if [ "$1" = "1" ]; then if md5sum -c --status < /etc/xensource/network.conf + fi +fi + + if test ! -e /var/xapi/network.dbcache; then if test "$1" = 1; then printf "Creating xapi database cache... " @@ -201,7 +224,7 @@ if test ! -e /etc/openvswitch/conf.db; then # Create ovs-vswitchd config database ovsdb-tool -vANY:console:emer create /etc/openvswitch/conf.db \ - /usr/share/openvswitch/vswitch.ovsschema \ + /usr/share/openvswitch/vswitch.ovsschema # Create initial table in config database ovsdb-tool -vANY:console:emer transact /etc/openvswitch/conf.db \ @@ -246,13 +269,6 @@ do fi done -# Install xsconsole plugin -plugin=$(readlink /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.py) -if [ "$plugin" != "/usr/share/openvswitch/scripts/XSFeatureVSwitch.py" ]; then - rm -f /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.py - ln -s /usr/share/openvswitch/scripts/XSFeatureVSwitch.py /usr/lib/xsconsole/plugins-base/ || printf "Could not link to Open vSwitch xsconsole plugin.\n" -fi - # Ensure all required services are set to run for s in openvswitch openvswitch-xapi-update; do if chkconfig --list $s >/dev/null 2>&1; then @@ -286,11 +302,14 @@ fi %postun if [ "$1" = "0" ]; then # $1 = 1 for upgrade + . /etc/xensource-inventory + if test "$PRODUCT_VERSION" = "5.5.0"; then + XSS=/opt/xensource/libexec/xapi-startup-script + rm -f $XSS + fi - rm -f /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.py \ - /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyc \ - /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyo \ - || printf "Could not remove Open vSwitch xsconsole plugin.\n" + rm -f /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyc \ + /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyo rm -f /usr/share/openvswitch/scripts/InterfaceReconfigure.pyc \ /usr/share/openvswitch/scripts/InterfaceReconfigure.pyo \ @@ -302,6 +321,9 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade # Restore original XenServer scripts for f in \ /opt/xensource/libexec/interface-reconfigure \ + /opt/xensource/libexec/InterfaceReconfigure.py \ + /opt/xensource/libexec/InterfaceReconfigureBridge.py \ + /opt/xensource/libexec/InterfaceReconfigureVswitch.py \ /etc/xensource/scripts/vif \ /usr/sbin/xen-bugtool \ /usr/sbin/brctl @@ -323,8 +345,13 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade rm -f /etc/openvswitch/vswitchd.cacert rm -f /var/xapi/network.dbcache - # Configure system to use bridge - echo bridge > /etc/xensource/network.conf + if test "$PRODUCT_VERSION" != "5.5.0"; then + # Configure system to use bridge + echo bridge > /etc/xensource/network.conf + else + # Get rid of network.conf entirely, to make the system pristine. + rm -f /etc/xensource/network.conf + fi printf "\nYou MUST reboot the server now to complete the change to\n" printf "standard Xen networking. Attempts to modify networking on the\n" @@ -340,11 +367,8 @@ fi /etc/xapi.d/plugins/openvswitch-cfg-update /etc/logrotate.d/openvswitch /etc/profile.d/openvswitch.sh -/lib/modules/%{xen_version}/kernel/net/openvswitch/openvswitch_mod.ko -/lib/modules/%{xen_version}/kernel/net/openvswitch/brcompat_mod.ko -%if %(echo '%{xen_version}'|awk -F"." '{if ($3>=18) print 1; else print 0;}') -/lib/modules/%{xen_version}/kernel/net/openvswitch/ip_gre_mod.ko -%endif +/lib/modules/%{xen_version}/kernel/extra/openvswitch/openvswitch_mod.ko +/lib/modules/%{xen_version}/kernel/extra/openvswitch/brcompat_mod.ko /usr/share/openvswitch/scripts/refresh-network-uuids /usr/share/openvswitch/scripts/interface-reconfigure /usr/share/openvswitch/scripts/InterfaceReconfigure.py @@ -352,7 +376,6 @@ fi /usr/share/openvswitch/scripts/InterfaceReconfigureVswitch.py /usr/share/openvswitch/scripts/vif /usr/share/openvswitch/scripts/xen-bugtool -/usr/share/openvswitch/scripts/XSFeatureVSwitch.py /usr/share/openvswitch/scripts/brctl /usr/share/openvswitch/scripts/sysconfig.template /usr/share/openvswitch/vswitch.ovsschema @@ -365,6 +388,7 @@ fi /usr/bin/ovs-vsctl /usr/bin/ovsdb-client /usr/bin/ovsdb-tool +/usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.py /usr/share/man/man1/ovsdb-client.1.gz /usr/share/man/man1/ovsdb-server.1.gz /usr/share/man/man1/ovsdb-tool.1.gz @@ -376,5 +400,7 @@ fi /usr/share/man/man8/ovs-vsctl.8.gz /usr/share/man/man8/ovs-vswitchd.8.gz /var/lib/openvswitch +%exclude /usr/lib/xsconsole/plugins-base/*.pyc +%exclude /usr/lib/xsconsole/plugins-base/*.pyo %exclude /usr/share/openvswitch/scripts/*.pyc %exclude /usr/share/openvswitch/scripts/*.pyo