1 m4_divert_push([PREPARE_TESTS])
3 # Creates a directory tree for use with "interface-reconfigure --root-dir".
6 interface-reconfigure \
7 InterfaceReconfigure.py \
8 InterfaceReconfigureBridge.py \
9 InterfaceReconfigureVswitch.py
11 cp $top_srcdir/xenserver/opt_xensource_libexec_$script $script
15 cat > etc/xensource-inventory <<EOF
16 PRODUCT_BRAND='XenServer'
17 PRODUCT_NAME='xenenterprise'
18 PRODUCT_VERSION='5.5.0'
20 KERNEL_VERSION='2.6.18-128.1.6.el5.xs5.5.0.505.1024xen'
22 INSTALLATION_DATE='2010-02-10 16:45:28.748345'
23 PRIMARY_DISK='/dev/disk/by-id/scsi-360022190add7fc001241a14e0ee3e85c'
24 BACKUP_PARTITION='/dev/disk/by-id/scsi-360022190add7fc001241a14e0ee3e85c-part2'
25 INSTALLATION_UUID='852ee692-71b4-439e-abfb-0eba72dc85f0'
26 CONTROL_DOMAIN_UUID='44e6b66e-3074-4a3c-bbcd-756d845a3b56'
27 DEFAULT_SR_PHYSDEVS='/dev/sda3'
29 MANAGEMENT_INTERFACE='xenbr2'
32 mkdir -p etc/xensource
33 echo vswitch > etc/xensource/network.conf
44 usr/sbin/ovs-vlan-bug-workaround
46 mkdir -p `dirname $utility`
47 cat > $utility <<'EOF'
55 cat > usr/bin/ovs-vsctl <<'EOF'
59 while test ${#} -ge 4; do
60 if test X"${1}" = Xget && \
61 test X"${2}" = Xinterface && \
62 test X"${4}" = Xofport; then
63 if test X"${3}" = Xeth2; then
73 chmod +x usr/bin/ovs-vsctl
75 cat > usr/bin/ovs-ofctl <<'EOF'
79 # Check that the flow is properly formed.
80 ovs-ofctl parse-flow "${3}" >/dev/null
82 chmod +x usr/bin/ovs-ofctl
84 mkdir -p etc/sysconfig/network-scripts
86 mkdir -p sys/class/net/${1}
87 echo ${2} > sys/class/net/${1}/address
88 echo ${3} > sys/class/net/${1}/tx_queue_len
89 if test ${1} = eth1; then
90 # No VLAN acceleration.
91 echo 0x829 > sys/class/net/${1}/features
93 # Supports VLAN acceleration.
94 echo 0x10b89 > sys/class/net/${1}/features
96 mkdir sys/class/net/${1}/device
97 ln -s ../../../bus/pci/drivers/e1000 sys/class/net/${1}/device/driver
99 : >> etc/sysconfig/network-scripts/ifcfg-${1}
102 configure_netdev lo 00:00:00:00:00:00 0
103 configure_netdev eth0 00:22:19:22:4b:af 1000
104 configure_netdev eth1 00:22:19:22:4b:b1 1000
105 configure_netdev eth2 00:15:17:a0:29:80 1000
106 configure_netdev eth3 00:15:17:a0:29:81 1000
107 configure_netdev eth4 00:1b:21:29:ce:51 1000
110 cat > var/xapi/network.dbcache <<'EOF'
111 <?xml version="1.0" ?>
112 <xenserver-network-configuration>
113 <pif ref="OpaqueRef:e0955887-571f-17fc-a971-61c1ec7d81b6">
115 <tunnel_access_PIF_of/>
120 OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
123 bd62a141-091f-3909-e334-0334f67ff3be
141 <ip_configuration_mode>
143 </ip_configuration_mode>
153 </currently_attached>
158 OpaqueRef:83e4a934-aeb5-e6f0-a743-d1c7ef7364c5
161 <pif ref="OpaqueRef:eea8da94-a5e6-18fc-34a7-5e9b5a235806">
163 <tunnel_access_PIF_of/>
171 df8d35c2-cc3a-a623-7065-d987a29feb75
189 <ip_configuration_mode>
191 </ip_configuration_mode>
201 </currently_attached>
206 OpaqueRef:bf51b4d3-7bdc-ea55-ba21-539b150b0531
209 <pif ref="OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768">
211 <tunnel_access_PIF_of/>
216 OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
219 2f87fc95-5ab4-571a-2487-3f4ac1985663
237 <ip_configuration_mode>
239 </ip_configuration_mode>
249 </currently_attached>
254 OpaqueRef:92b41bf6-aa21-45d3-1c86-c87a5fa98f7d
257 <pif ref="OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e">
259 <tunnel_access_PIF_of/>
267 d2dfdab3-daf4-afea-f055-a25a0d24d714
273 OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c
285 <ip_configuration_mode>
287 </ip_configuration_mode>
297 </currently_attached>
302 OpaqueRef:a63afad0-fb4c-b4a4-3696-cbb3d88afc47
305 <pif ref="OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc">
308 OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297
311 <tunnel_access_PIF_of/>
319 f4ba396e-a993-a592-5fbc-a1d566afb59e
337 <ip_configuration_mode>
339 </ip_configuration_mode>
349 </currently_attached>
354 OpaqueRef:d9189da2-d00b-61ba-8a6d-ac42cc868e32
357 <pif ref="OpaqueRef:205d1186-2cd1-d5e6-45e4-ea1698ea6e15">
359 <tunnel_access_PIF_of/>
367 646ca9a1-36ad-e2f9-3ecc-1e5622c201c2
385 <ip_configuration_mode>
387 </ip_configuration_mode>
397 </currently_attached>
402 OpaqueRef:6e7c6e81-6b5e-b91f-e1f9-9e028567bdfe
405 <pif ref="OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3">
407 <tunnel_access_PIF_of/>
415 3941edd2-865b-8dd8-61f0-199f5e1fa652
421 OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297
433 <ip_configuration_mode>
435 </ip_configuration_mode>
445 </currently_attached>
450 OpaqueRef:240fb5f8-addc-6ea3-f921-2a42b42acd17
453 <pif ref="OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11">
456 OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c
459 <tunnel_access_PIF_of/>
467 6c0327a9-afa3-fc19-6798-a1bfe20095ed
485 <ip_configuration_mode>
487 </ip_configuration_mode>
496 OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
501 </currently_attached>
506 OpaqueRef:ec1e5037-60ea-97e5-54b8-39bdb43c071a
509 <bond ref="OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e">
511 OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
514 dad825f1-6d81-386e-849c-5589281e53e1
518 OpaqueRef:e0955887-571f-17fc-a971-61c1ec7d81b6
521 OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768
525 <vlan ref="OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c">
527 OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
530 841814da-d0d2-9da4-0b2e-b6143480bbfb
533 OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e
536 <vlan ref="OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297">
538 OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc
541 399279a2-5ccd-5368-9af3-8622a1f1ac82
544 OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3
547 <network ref="OpaqueRef:a63afad0-fb4c-b4a4-3696-cbb3d88afc47">
550 OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e
558 99be2da4-6c33-6f8e-49ea-3bc592fe3c85
561 <network ref="OpaqueRef:d9189da2-d00b-61ba-8a6d-ac42cc868e32">
564 OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc
572 2902ae1b-8013-897a-b697-0b200ea3aaa5
575 <network ref="OpaqueRef:ec1e5037-60ea-97e5-54b8-39bdb43c071a">
578 OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
586 45cbbb43-113d-a712-3231-c6463f253cef
589 <network ref="OpaqueRef:92b41bf6-aa21-45d3-1c86-c87a5fa98f7d">
592 OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768
600 99f8771a-645a-26a3-e06c-30a401f1d009
603 <network ref="OpaqueRef:6e7c6e81-6b5e-b91f-e1f9-9e028567bdfe">
606 OpaqueRef:205d1186-2cd1-d5e6-45e4-ea1698ea6e15
614 d08c8749-0c8f-9e8d-ce25-fd364661ee99
617 <network ref="OpaqueRef:83e4a934-aeb5-e6f0-a743-d1c7ef7364c5">
620 OpaqueRef:e0955887-571f-17fc-a971-61c1ec7d81b6
627 <vswitch-disable-in-band>
629 </vswitch-disable-in-band>
632 c9eecb03-560d-61de-b6a8-56dfc766f67e
635 <network ref="OpaqueRef:bf51b4d3-7bdc-ea55-ba21-539b150b0531">
638 OpaqueRef:eea8da94-a5e6-18fc-34a7-5e9b5a235806
646 d2c14c89-29cc-51d4-7664-633eff02b2ad
649 <network ref="OpaqueRef:0b7354a4-8f4b-aa08-2f16-a22c117e4211">
656 dc0f0632-c2aa-1b78-2fea-0d3a23c51740
659 <network ref="OpaqueRef:240fb5f8-addc-6ea3-f921-2a42b42acd17">
662 OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3
670 db7bdc03-074d-42ae-fc73-9b06de1d57f6
673 <pool ref="OpaqueRef:a765d06c-fc82-cc67-8f6c-fd8db45f6a84">
675 <vswitch-controller-fail-mode>
677 </vswitch-controller-fail-mode>
680 </xenserver-network-configuration>
685 ./interface-reconfigure --root-prefix="`pwd`" --no-syslog "$@"
689 sed -n -e "s,`pwd`,,g" -e 's/ -- /\
690 /g' -e '/^Running command:/!p' stderr
692 m4_divert_pop([PREPARE_TESTS])
695 AT_BANNER([interface-reconfigure])
697 AT_SETUP([non-VLAN, non-bond])
698 AT_KEYWORDS([interface-reconfigure])
699 AT_SKIP_IF([$non_ascii_cwd])
702 AT_CHECK([ifr_run --force xenbr2 up], [0], [], [stderr])
703 AT_CHECK([ifr_filter], [0], [[Force interface xenbr2 up
704 Loading xapi database cache from /var/xapi/network.dbcache
705 Configured for Vswitch datapath
707 Writing network configuration for xenbr2
708 Configuring xenbr2 using DHCP configuration
709 configure_datapath: bridge - xenbr2
710 configure_datapath: physical - [u'eth2']
711 configure_datapath: extra ports - []
712 configure_datapath: extra bonds - []
713 /usr/bin/ovs-vsctl -vconsole:off get-fail-mode xenbr2
714 Applying changes to /etc/sysconfig/network-scripts/route-xenbr2 configuration
715 Applying changes to /etc/sysconfig/network configuration
716 Applying changes to /etc/sysconfig/network-scripts/ifcfg-xenbr2 configuration
717 /sbin/ifconfig eth2 up mtu 1500
718 /sbin/ethtool -K eth2 gro off lro off
719 /usr/sbin/ovs-vlan-bug-workaround eth2 on
720 /usr/bin/ovs-vsctl --timeout=20
721 --with-iface --if-exists del-port eth2
722 --may-exist add-br xenbr2
723 --may-exist add-port xenbr2 eth2
724 set Bridge xenbr2 other-config:hwaddr="00:15:17:a0:29:80"
725 set Bridge xenbr2 fail_mode=secure
726 remove Bridge xenbr2 other_config disable-in-band
727 br-set-external-id xenbr2 xs-network-uuids d08c8749-0c8f-9e8d-ce25-fd364661ee99
728 /usr/bin/ovs-vsctl -vconsole:off get interface eth2 ofport
729 /usr/bin/ovs-ofctl add-flow xenbr2 idle_timeout=0,priority=0,in_port=5,arp,nw_proto=1,actions=local
730 /usr/bin/ovs-ofctl add-flow xenbr2 idle_timeout=0,priority=0,in_port=local,arp,dl_src=00:15:17:a0:29:80,actions=5
731 /usr/bin/ovs-ofctl add-flow xenbr2 idle_timeout=0,priority=0,in_port=5,dl_dst=00:15:17:a0:29:80,actions=local
732 /usr/bin/ovs-ofctl add-flow xenbr2 idle_timeout=0,priority=0,in_port=local,dl_src=00:15:17:a0:29:80,actions=5
735 Committing changes to /etc/sysconfig/network-scripts/route-xenbr2 configuration
736 Committing changes to /etc/sysconfig/network configuration
737 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xenbr2 configuration
740 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xenbr2], [0],
741 [# DO NOT EDIT: This file (ifcfg-xenbr2) was autogenerated by interface-reconfigure
748 PERSISTENT_DHCLIENT=yes
752 # Simulate interface-reconfigure creating xenbr2, so that we can tell
753 # interface-reconfigure to take it back down.
754 AT_CHECK([configure_netdev xenbr2 00:15:17:a0:29:80 0])
756 AT_CHECK([ifr_run --force xenbr2 down], [0], [], [stderr])
757 AT_CHECK([ifr_filter], [0], [[Force interface xenbr2 down
758 Loading xapi database cache from /var/xapi/network.dbcache
759 Configured for Vswitch datapath
762 deconfigure ipdev xenbr2 on xenbr2
763 deconfigure_bridge: bridge - xenbr2
764 action_down: bring down physical devices - [u'eth2']
765 /sbin/ifconfig eth2 down
766 /usr/bin/ovs-vsctl --timeout=20
767 --with-iface --if-exists del-port xenbr2
768 --if-exists del-br xenbr2
773 AT_SETUP([VLAN, non-bond])
774 AT_KEYWORDS([interface-reconfigure])
775 AT_SKIP_IF([$non_ascii_cwd])
778 AT_CHECK([ifr_run --force xapi3 up], [0], [], [stderr])
779 AT_CHECK([ifr_filter], [0], [[Force interface xapi3 up
780 Loading xapi database cache from /var/xapi/network.dbcache
781 Configured for Vswitch datapath
783 Writing network configuration for xapi3
784 Configuring xapi3 using None configuration
785 configure_datapath: bridge - xenbr3
786 configure_datapath: physical - [u'eth3']
787 configure_datapath: extra ports - []
788 configure_datapath: extra bonds - []
789 Applying changes to /etc/sysconfig/network-scripts/route-xapi3 configuration
790 Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi3 configuration
791 /sbin/ifconfig eth3 up mtu 1500
792 /sbin/ethtool -K eth3 gro off lro off
793 /usr/sbin/ovs-vlan-bug-workaround eth3 on
794 /usr/bin/ovs-vsctl --timeout=20
795 --with-iface --if-exists del-port eth3
796 --may-exist add-br xenbr3
797 --may-exist add-port xenbr3 eth3
798 set Bridge xenbr3 other-config:hwaddr="00:15:17:a0:29:81"
799 set Bridge xenbr3 fail_mode=secure
800 remove Bridge xenbr3 other_config disable-in-band
801 br-set-external-id xenbr3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
802 --if-exists del-br xapi3
803 --may-exist add-br xapi3 xenbr3 123
804 br-set-external-id xapi3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
805 set Interface xapi3 MAC="00:15:17:a0:29:81"
808 Committing changes to /etc/sysconfig/network-scripts/route-xapi3 configuration
809 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi3 configuration
812 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi3], [0],
813 [# DO NOT EDIT: This file (ifcfg-xapi3) was autogenerated by interface-reconfigure
823 # Simulate interface-reconfigure creating xapi3, so that we can tell
824 # interface-reconfigure to take it back down.
825 AT_CHECK([configure_netdev xapi3 00:23:20:AC:AF:02 0])
827 AT_CHECK([ifr_run --force xapi3 down], [0], [], [stderr])
828 AT_CHECK([ifr_filter], [0], [[Force interface xapi3 down
829 Loading xapi database cache from /var/xapi/network.dbcache
830 Configured for Vswitch datapath
833 deconfigure ipdev xapi3 on xenbr3
834 deconfigure_bridge: bridge - xapi3
835 action_down: no more masters, bring down slave xenbr3
836 deconfigure_bridge: bridge - xenbr3
837 action_down: bring down physical devices - [u'eth3']
838 /sbin/ifconfig eth3 down
839 /usr/bin/ovs-vsctl --timeout=20
840 --with-iface --if-exists del-port xapi3
841 --if-exists del-br xapi3
842 --if-exists del-br xenbr3
847 AT_SETUP([Bond, non-VLAN])
848 AT_KEYWORDS([interface-reconfigure])
849 AT_SKIP_IF([$non_ascii_cwd])
852 # Pretend that bond0 exists, even though it would really be created by
853 # a "create-bond" call in an ovs-vsctl invocation within
854 # interface-reconfigure, because otherwise interface-reconfigure will
855 # die with "failed to apply changes: netdev: up: device bond0 does not
856 # exist" after it thinks it created bond0.
857 AT_CHECK([configure_netdev bond0 00:23:20:e6:39:75 0])
859 AT_CHECK([ifr_run --force xapi1 up], [0], [], [stderr])
860 AT_CHECK([ifr_filter], [0], [[Force interface xapi1 up
861 Loading xapi database cache from /var/xapi/network.dbcache
862 Configured for Vswitch datapath
864 Writing network configuration for xapi1
865 Configuring xapi1 using None configuration
866 configure_datapath: leaving bond bond0 up
867 configure_datapath: leaving bond bond0 up
868 configure_datapath: bridge - xapi1
869 configure_datapath: physical - [u'eth0', u'eth1']
870 configure_datapath: extra ports - []
871 configure_datapath: extra bonds - []
872 netdev: down: device xenbr0 does not exist, ignoring
873 netdev: down: device xenbr1 does not exist, ignoring
874 Applying changes to /etc/sysconfig/network-scripts/route-xapi1 configuration
875 Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi1 configuration
876 /sbin/ifconfig eth0 up mtu 1500
877 /sbin/ethtool -K eth0 gro off lro off
878 /usr/sbin/ovs-vlan-bug-workaround eth0 on
879 /sbin/ifconfig eth1 up mtu 1500
880 /sbin/ethtool -K eth1 gro off lro off
881 /usr/sbin/ovs-vlan-bug-workaround eth1 off
882 /usr/bin/ovs-vsctl --timeout=20
883 --if-exists del-br xenbr0
884 --if-exists del-br xenbr1
885 --with-iface --if-exists del-port eth0
886 --with-iface --if-exists del-port eth1
887 --may-exist add-br xapi1
888 --with-iface --if-exists del-port bond0
889 --fake-iface add-bond xapi1 bond0 eth0 eth1
890 set Port bond0 MAC="00:22:19:22:4b:af" other-config:bond-miimon-interval=100 bond_downdelay=200 bond_updelay=31000 other-config:bond-detect-mode=carrier lacp=off bond_mode=balance-slb
891 set Bridge xapi1 other-config:hwaddr="00:22:19:22:4b:af"
892 set Bridge xapi1 fail_mode=secure
893 remove Bridge xapi1 other_config disable-in-band
894 br-set-external-id xapi1 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
896 action_up: bring up bond0
897 /sbin/ifconfig bond0 up
899 Committing changes to /etc/sysconfig/network-scripts/route-xapi1 configuration
900 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi1 configuration
903 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi1], [0],
904 [# DO NOT EDIT: This file (ifcfg-xapi1) was autogenerated by interface-reconfigure
914 # Simulate interface-reconfigure creating xapi1, so that we can tell
915 # interface-reconfigure to take it back down.
916 AT_CHECK([configure_netdev xapi1 00:22:19:22:4B:AF 0])
918 AT_CHECK([ifr_run --force xapi1 down], [0], [], [stderr])
919 AT_CHECK([ifr_filter], [0], [[Force interface xapi1 down
920 Loading xapi database cache from /var/xapi/network.dbcache
921 Configured for Vswitch datapath
924 deconfigure ipdev xapi1 on xapi1
925 deconfigure_bridge: bridge - xapi1
926 action_down: bring down physical devices - [u'eth0', u'eth1']
927 /sbin/ifconfig eth0 down
928 /sbin/ifconfig eth1 down
929 /usr/bin/ovs-vsctl --timeout=20
930 --with-iface --if-exists del-port xapi1
931 --if-exists del-br xapi1
936 AT_SETUP([VLAN on bond])
937 AT_KEYWORDS([interface-reconfigure])
938 AT_SKIP_IF([$non_ascii_cwd])
941 # Pretend that bond0 exists, even though it would really be created by
942 # a "create-bond" call in an ovs-vsctl invocation within
943 # interface-reconfigure, because otherwise interface-reconfigure will
944 # die with "failed to apply changes: netdev: up: device bond0 does not
945 # exist" after it thinks it created bond0.
946 AT_CHECK([configure_netdev bond0 00:23:20:e6:39:75 0])
948 AT_CHECK([ifr_run --force xapi2 up], [0], [], [stderr])
949 AT_CHECK([ifr_filter], [0], [[Force interface xapi2 up
950 Loading xapi database cache from /var/xapi/network.dbcache
951 Configured for Vswitch datapath
953 Writing network configuration for xapi2
954 Configuring xapi2 using None configuration
955 configure_datapath: leaving bond bond0 up
956 configure_datapath: leaving bond bond0 up
957 configure_datapath: bridge - xapi1
958 configure_datapath: physical - [u'eth0', u'eth1']
959 configure_datapath: extra ports - []
960 configure_datapath: extra bonds - []
961 netdev: down: device xenbr0 does not exist, ignoring
962 netdev: down: device xenbr1 does not exist, ignoring
963 Applying changes to /etc/sysconfig/network-scripts/route-xapi2 configuration
964 Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi2 configuration
965 /sbin/ifconfig eth0 up mtu 1500
966 /sbin/ethtool -K eth0 gro off lro off
967 /usr/sbin/ovs-vlan-bug-workaround eth0 on
968 /sbin/ifconfig eth1 up mtu 1500
969 /sbin/ethtool -K eth1 gro off lro off
970 /usr/sbin/ovs-vlan-bug-workaround eth1 off
971 /usr/bin/ovs-vsctl --timeout=20
972 --if-exists del-br xenbr0
973 --if-exists del-br xenbr1
974 --with-iface --if-exists del-port eth0
975 --with-iface --if-exists del-port eth1
976 --may-exist add-br xapi1
977 --with-iface --if-exists del-port bond0
978 --fake-iface add-bond xapi1 bond0 eth0 eth1
979 set Port bond0 MAC="00:22:19:22:4b:af" other-config:bond-miimon-interval=100 bond_downdelay=200 bond_updelay=31000 other-config:bond-detect-mode=carrier lacp=off bond_mode=balance-slb
980 set Bridge xapi1 other-config:hwaddr="00:22:19:22:4b:af"
981 set Bridge xapi1 fail_mode=secure
982 remove Bridge xapi1 other_config disable-in-band
983 br-set-external-id xapi1 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
984 --if-exists del-br xapi2
985 --may-exist add-br xapi2 xapi1 4
986 br-set-external-id xapi2 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
987 set Interface xapi2 MAC="00:22:19:22:4b:af"
989 action_up: bring up bond0
990 /sbin/ifconfig bond0 up
992 Committing changes to /etc/sysconfig/network-scripts/route-xapi2 configuration
993 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi2 configuration
996 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi2], [0],
997 [# DO NOT EDIT: This file (ifcfg-xapi2) was autogenerated by interface-reconfigure
1007 # Simulate interface-reconfigure creating xapi2, so that we can tell
1008 # interface-reconfigure to take it back down.
1009 AT_CHECK([configure_netdev xapi2 00:23:20:A4:71:C2 0])
1011 AT_CHECK([ifr_run --force xapi2 down], [0], [], [stderr])
1012 AT_CHECK([ifr_filter], [0], [[Force interface xapi2 down
1013 Loading xapi database cache from /var/xapi/network.dbcache
1014 Configured for Vswitch datapath
1017 deconfigure ipdev xapi2 on xapi1
1018 deconfigure_bridge: bridge - xapi2
1019 action_down: no more masters, bring down slave xapi1
1020 deconfigure_bridge: bridge - xapi1
1021 action_down: bring down physical devices - [u'eth0', u'eth1']
1022 /sbin/ifconfig eth0 down
1023 /sbin/ifconfig eth1 down
1024 /usr/bin/ovs-vsctl --timeout=20
1025 --with-iface --if-exists del-port xapi2
1026 --if-exists del-br xapi2
1027 --if-exists del-br xapi1
1032 dnl This test configures two tunnels, then deletes the second and re-uses its
1033 dnl name for different types of ports. This was introduced to detect errors
1034 dnl where port configuration persists even when the port is deleted and
1036 AT_SETUP([Re-create port with different types])
1037 AT_KEYWORDS([interface-reconfigure])
1039 [add-port br0 p0 -- set int p0 type=gre options:remote_ip=127.0.0.1 -- \
1040 add-port br0 p1 -- set int p1 type=dummy -- \
1041 add-port br0 p2 -- set int p2 type=dummy])
1043 AT_CHECK([ovs-vsctl set int p1 type=gre options:remote_ip=127.0.0.1])
1044 AT_CHECK([ovs-vsctl del-port p1])
1045 AT_CHECK([ovs-vsctl add-port br0 p1 -- set int p1 type=dummy])