X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fvswitch-xen.spec;h=d3211fb57bb1d04e49f9967f32c6de85ac571019;hb=7b09e42666aa1d345d44c112ff7f74ac8f030297;hp=7f1ed40913c66d77afce72a5b31591011905cae6;hpb=eaa3c7e88b315d1d018b702ed3b9bea768a966c5;p=openvswitch diff --git a/xenserver/vswitch-xen.spec b/xenserver/vswitch-xen.spec index 7f1ed409..d3211fb5 100644 --- a/xenserver/vswitch-xen.spec +++ b/xenserver/vswitch-xen.spec @@ -1,6 +1,6 @@ # Spec file for vswitch and related programs. -# Copyright (C) 2009 Nicira Networks, Inc. +# 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 @@ -44,7 +44,7 @@ traffic. %setup -q -n openvswitch-%{vswitch_version} %build -./configure --prefix=/usr --localstatedir=%{_localstatedir} --with-l26=/lib/modules/%{xen_version}/build --enable-ssl %{build_number} +./configure --prefix=/usr --sysconfdir=/etc --localstatedir=%{_localstatedir} --with-l26=/lib/modules/%{xen_version}/build --enable-ssl %{build_number} make %{_smp_mflags} %install @@ -67,12 +67,22 @@ install -d -m 755 $RPM_BUILD_ROOT/etc/xapi.d/plugins install -m 755 xenserver/etc_xapi.d_plugins_vswitch-cfg-update \ $RPM_BUILD_ROOT/etc/xapi.d/plugins/vswitch-cfg-update install -d -m 755 $RPM_BUILD_ROOT/usr/share/vswitch/scripts +install -m 644 vswitchd/vswitch.ovsschema \ + $RPM_BUILD_ROOT/usr/share/vswitch/vswitch.ovsschema install -m 755 xenserver/opt_xensource_libexec_interface-reconfigure \ $RPM_BUILD_ROOT/usr/share/vswitch/scripts/interface-reconfigure +install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigure.py \ + $RPM_BUILD_ROOT/usr/share/vswitch/scripts/InterfaceReconfigure.py +install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigureBridge.py \ + $RPM_BUILD_ROOT/usr/share/vswitch/scripts/InterfaceReconfigureBridge.py +install -m 644 xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py \ + $RPM_BUILD_ROOT/usr/share/vswitch/scripts/InterfaceReconfigureVswitch.py install -m 755 xenserver/etc_xensource_scripts_vif \ $RPM_BUILD_ROOT/usr/share/vswitch/scripts/vif install -m 755 xenserver/usr_share_vswitch_scripts_dump-vif-details \ $RPM_BUILD_ROOT/usr/share/vswitch/scripts/dump-vif-details +install -m 755 xenserver/usr_share_vswitch_scripts_refresh-xs-network-uuids \ + $RPM_BUILD_ROOT/usr/share/vswitch/scripts/refresh-xs-network-uuids install -m 755 xenserver/usr_sbin_xen-bugtool \ $RPM_BUILD_ROOT/usr/share/vswitch/scripts/xen-bugtool install -m 755 xenserver/usr_sbin_brctl \ @@ -83,8 +93,8 @@ install -m 644 \ xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py \ $RPM_BUILD_ROOT/usr/share/vswitch/scripts/XSFeatureVSwitch.py -install -d -m 755 $RPM_BUILD_ROOT/root/vswitch/kernel_modules -find datapath/linux-2.6 -name *.ko -exec install -m 755 \{\} $RPM_BUILD_ROOT/root/vswitch/kernel_modules/ \; +install -d -m 755 $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/vswitch +find datapath/linux-2.6 -name *.ko -exec install -m 755 \{\} $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/vswitch \; # Get rid of stuff we don't want to make RPM happy. rm \ @@ -100,9 +110,7 @@ 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/root/vswitch/kernel_modules/veth_mod.ko -rm -r \ - $RPM_BUILD_ROOT/usr/share/openvswitch/commands +rm -f $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/net/vswitch/veth_mod.ko install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch @@ -127,6 +135,15 @@ EOF elif md5sum -c --status </dev/null 2>&1; then :; else cat >>/etc/sysctl.conf < /dev/null +fi # Create default or update existing /etc/sysconfig/vswitch. SYSCONFIG=/etc/sysconfig/vswitch @@ -204,13 +232,16 @@ mkdir -p /usr/lib/vswitch/xs-original \ || printf "Could not create script backup directory.\n" 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 do s=$(basename "$f") t=$(readlink "$f") - if [ "$t" != "/usr/share/vswitch/scripts/$s" ]; then + if [ -f "$f" ] && [ "$t" != "/usr/share/vswitch/scripts/$s" ]; then mv "$f" /usr/lib/vswitch/xs-original/ \ || printf "Could not save original XenServer $s script\n" ln -s "/usr/share/vswitch/scripts/$s" "$f" \ @@ -234,6 +265,9 @@ for s in vswitch vswitch-xapi-update; do chkconfig $s on || printf "Could not enable $s init script." done +# Configure system to use vswitch +echo vswitch > /etc/xensource/network.conf + if [ "$1" = "1" ]; then # $1 = 2 for upgrade printf "\nYou MUST reboot the server NOW to complete the change to the\n" printf "the vSwitch. Attempts to modify networking on the server\n" @@ -279,9 +313,13 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade done # Remove all configuration files - rm -f /etc/ovs-vswitchd.conf + rm -f /etc/ovs-vswitchd.conf.db rm -f /etc/sysconfig/vswitch rm -f /etc/ovs-vswitchd.cacert + rm -f /var/xapi/network.dbcache + + # Configure system to use bridge + echo bridge > /etc/xensource/network.conf printf "\nYou MUST reboot the server now to complete the change to\n" printf "standard Xen networking. Attempts to modify networking on the\n" @@ -297,33 +335,41 @@ fi /etc/xapi.d/plugins/vswitch-cfg-update /etc/logrotate.d/vswitch /etc/profile.d/vswitch.sh -/root/vswitch/kernel_modules/brcompat_mod.ko -/root/vswitch/kernel_modules/openvswitch_mod.ko +/lib/modules/%{xen_version}/kernel/net/vswitch/openvswitch_mod.ko +/lib/modules/%{xen_version}/kernel/net/vswitch/brcompat_mod.ko +%if %(echo '%{xen_version}'|awk -F"." '{if ($3>=18) print 1; else print 0;}') +/lib/modules/%{xen_version}/kernel/net/vswitch/ip_gre_mod.ko +%endif /usr/share/vswitch/scripts/dump-vif-details +/usr/share/vswitch/scripts/refresh-xs-network-uuids /usr/share/vswitch/scripts/interface-reconfigure +/usr/share/vswitch/scripts/InterfaceReconfigure.py +/usr/share/vswitch/scripts/InterfaceReconfigureBridge.py +/usr/share/vswitch/scripts/InterfaceReconfigureVswitch.py /usr/share/vswitch/scripts/vif /usr/share/vswitch/scripts/xen-bugtool /usr/share/vswitch/scripts/XSFeatureVSwitch.py /usr/share/vswitch/scripts/brctl /usr/share/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 -# after the install script runs. Since they are small, we just -# include them. -/usr/share/vswitch/scripts/XSFeatureVSwitch.pyc -/usr/share/vswitch/scripts/XSFeatureVSwitch.pyo +/usr/share/vswitch/vswitch.ovsschema /usr/sbin/ovs-brcompatd /usr/sbin/ovs-vswitchd +/usr/sbin/ovsdb-server /usr/bin/ovs-appctl -/usr/bin/ovs-cfg-mod /usr/bin/ovs-dpctl /usr/bin/ovs-ofctl -/usr/share/man/man5/ovs-vswitchd.conf.5.gz +/usr/bin/ovs-vsctl +/usr/bin/ovsdb-client +/usr/bin/ovsdb-tool +/usr/share/man/man1/ovsdb-client.1.gz +/usr/share/man/man1/ovsdb-server.1.gz +/usr/share/man/man1/ovsdb-tool.1.gz /usr/share/man/man8/ovs-appctl.8.gz /usr/share/man/man8/ovs-brcompatd.8.gz -/usr/share/man/man8/ovs-cfg-mod.8.gz /usr/share/man/man8/ovs-dpctl.8.gz /usr/share/man/man8/ovs-ofctl.8.gz +/usr/share/man/man8/ovs-vsctl.8.gz /usr/share/man/man8/ovs-vswitchd.8.gz /var/lib/openvswitch +%exclude /usr/share/vswitch/scripts/*.pyc +%exclude /usr/share/vswitch/scripts/*.pyo