X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fvswitch-xen.spec;h=886834f507a622c9e554760a65c38398429a8715;hb=0d46ae039b49e69f8c60ded0d70ecc15537a0580;hp=94bd916d0c1c30bf4780cf6f81365a64a559ec26;hpb=8fef8c7121222233075a03d57db7e0b48d5f6be5;p=openvswitch diff --git a/xenserver/vswitch-xen.spec b/xenserver/vswitch-xen.spec index 94bd916d..886834f5 100644 --- a/xenserver/vswitch-xen.spec +++ b/xenserver/vswitch-xen.spec @@ -28,6 +28,13 @@ Release: 1 Source: openvswitch-%{vswitch_version}.tar.gz Buildroot: /tmp/vswitch-xen-rpm Requires: kernel-xen = %(echo '%{xen_version}' | sed 's/xen$//') +# The following Conflicts prevents the "vswitch" package generated by +# this spec file from installing at the same time as the "openvswitch" +# package shipped with XenServer 5.5.900. In fact, the packages +# contain some files with identical names anyhow, so they will not +# coexist, but adding an explicit Conflicts makes this conflict more +# obvious. +Conflicts: openvswitch %description The vswitch provides standard network bridging functions augmented with @@ -51,8 +58,6 @@ install -m 755 xenserver/etc_init.d_vswitch \ install -m 755 xenserver/etc_init.d_vswitch-xapi-update \ $RPM_BUILD_ROOT/etc/init.d/vswitch-xapi-update install -d -m 755 $RPM_BUILD_ROOT/etc/sysconfig -install -m 755 xenserver/etc_sysconfig_vswitch.example \ - $RPM_BUILD_ROOT/etc/sysconfig/vswitch.example install -d -m 755 $RPM_BUILD_ROOT/etc/logrotate.d install -m 755 xenserver/etc_logrotate.d_vswitch \ $RPM_BUILD_ROOT/etc/logrotate.d/vswitch @@ -71,6 +76,10 @@ install -m 755 xenserver/root_vswitch_scripts_dump-vif-details \ $RPM_BUILD_ROOT%{_prefix}/scripts/dump-vif-details install -m 755 xenserver/usr_sbin_xen-bugtool \ $RPM_BUILD_ROOT%{_prefix}/scripts/xen-bugtool +install -m 755 xenserver/usr_sbin_brctl \ + $RPM_BUILD_ROOT%{_prefix}/scripts/brctl +install -m 755 xenserver/root_vswitch_scripts_sysconfig.template \ + $RPM_BUILD_ROOT/root/vswitch/scripts/sysconfig.template install -m 644 \ xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py \ $RPM_BUILD_ROOT%{_prefix}/scripts/XSFeatureVSwitch.py @@ -107,19 +116,33 @@ if [ ! -f /etc/xensource-inventory ]; then fi if [ "$1" = "1" ]; then - if ! md5sum -c --status </dev/null 2>&1; then + echo >> $SYSCONFIG + sed -n "/$var:/,/$var=/p" $TEMPLATE >> $SYSCONFIG + fi + done +fi + +# Replace XenServer files by our versions. mkdir -p %{_prefix}/xs-original \ || printf "Could not create script backup directory.\n" for f in \ /opt/xensource/libexec/interface-reconfigure \ /etc/xensource/scripts/vif \ - /usr/sbin/xen-bugtool + /usr/sbin/xen-bugtool \ + /usr/sbin/brctl do s=$(basename "$f") t=$(readlink "$f") @@ -253,7 +292,8 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade for f in \ /opt/xensource/libexec/interface-reconfigure \ /etc/xensource/scripts/vif \ - /usr/sbin/xen-bugtool + /usr/sbin/xen-bugtool \ + /usr/sbin/brctl do s=$(basename "$f") if [ ! -f "%{_prefix}/xs-original/$s" ]; then @@ -269,10 +309,9 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade find %{_prefix} -type d -depth -exec rmdir \{\} \; \ || printf "Could not remove vSwitch install directory.\n" - # Remove all configuration and log files + # Remove all configuration files rm -f /etc/ovs-vswitchd.conf rm -f /etc/sysconfig/vswitch - rm -f /var/log/vswitch* rm -f /etc/ovs-vswitchd.cacert printf "\nYou MUST reboot the server now to complete the change to\n" @@ -287,7 +326,6 @@ fi /etc/init.d/vswitch /etc/init.d/vswitch-xapi-update /etc/xapi.d/plugins/vswitch-cfg-update -/etc/sysconfig/vswitch.example /etc/logrotate.d/vswitch /etc/profile.d/vswitch.sh /root/vswitch/kernel_modules/brcompat_mod.ko @@ -297,6 +335,8 @@ fi /root/vswitch/scripts/vif /root/vswitch/scripts/xen-bugtool /root/vswitch/scripts/XSFeatureVSwitch.py +/root/vswitch/scripts/brctl +/root/vswitch/scripts/sysconfig.template # Following two files are generated automatically by rpm. We don't # really need them and they won't be used on the XenServer, but there # isn't an obvious place to get rid of them since they are generated