netflow: Fix interpretation of flow_seq.
[cascardo/ovs.git] / tests / interface-reconfigure.at
1 m4_divert_push([PREPARE_TESTS])
2 [
3 # Creates a directory tree for use with "interface-reconfigure --root-dir".
4 ifr_setup () {
5     for script in \
6             interface-reconfigure \
7             InterfaceReconfigure.py \
8             InterfaceReconfigureBridge.py \
9             InterfaceReconfigureVswitch.py
10         do
11             cp $top_srcdir/xenserver/opt_xensource_libexec_$script $script
12         done
13
14         mkdir -p etc
15         cat > etc/xensource-inventory <<EOF
16 PRODUCT_BRAND='XenServer'
17 PRODUCT_NAME='xenenterprise'
18 PRODUCT_VERSION='5.5.0'
19 BUILD_NUMBER='24648p'
20 KERNEL_VERSION='2.6.18-128.1.6.el5.xs5.5.0.505.1024xen'
21 XEN_VERSION='3.3.1'
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'
28 DOM0_MEM='752'
29 MANAGEMENT_INTERFACE='xenbr2'
30 EOF
31
32         mkdir -p etc/xensource
33         echo vswitch > etc/xensource/network.conf
34
35         for utility in \
36             sbin/ethtool \
37             sbin/ifconfig \
38             sbin/ifdown \
39             sbin/ifup \
40             sbin/ip \
41             sbin/update-issue \
42             sbin/vconfig \
43             usr/sbin/brctl \
44             usr/sbin/ovs-vlan-bug-workaround
45         do
46             mkdir -p `dirname $utility`
47             cat > $utility <<'EOF'
48 #! /bin/sh
49 echo ${0} ${*} >&2
50 EOF
51             chmod +x $utility
52         done
53
54         mkdir -p usr/bin
55         cat > usr/bin/ovs-vsctl <<'EOF'
56 #! /bin/sh
57 echo ${0} ${*} >&2
58
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
64               echo 5
65           else
66               echo -1
67           fi
68     fi
69
70     shift
71 done
72 EOF
73         chmod +x usr/bin/ovs-vsctl
74
75         cat > usr/bin/ovs-ofctl <<'EOF'
76 #! /bin/sh
77 echo ${0} ${*} >&2
78
79 # Check that the flow is properly formed.
80 ovs-ofctl parse-flow "${3}" >/dev/null
81 EOF
82         chmod +x usr/bin/ovs-ofctl
83
84         mkdir -p etc/sysconfig/network-scripts
85         configure_netdev () {
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
92             else
93                 # Supports VLAN acceleration.
94                 echo 0x10b89 > sys/class/net/${1}/features
95             fi
96             mkdir sys/class/net/${1}/device
97             ln -s ../../../bus/pci/drivers/e1000 sys/class/net/${1}/device/driver
98
99             : >> etc/sysconfig/network-scripts/ifcfg-${1}
100         }
101
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
108
109         mkdir -p var/xapi
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">
114                 <VLAN_slave_of/>
115                 <tunnel_access_PIF_of/>
116                 <management>
117                         False
118                 </management>
119                 <bond_slave_of>
120                         OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
121                 </bond_slave_of>
122                 <uuid>
123                         bd62a141-091f-3909-e334-0334f67ff3be
124                 </uuid>
125                 <IP>
126                         
127                 </IP>
128                 <VLAN_master_of>
129                         OpaqueRef:NULL
130                 </VLAN_master_of>
131                 <VLAN>
132                         -1
133                 </VLAN>
134                 <netmask>
135                         
136                 </netmask>
137                 <other_config/>
138                 <MAC>
139                         00:22:19:22:4b:af
140                 </MAC>
141                 <ip_configuration_mode>
142                         None
143                 </ip_configuration_mode>
144                 <DNS>
145                         
146                 </DNS>
147                 <device>
148                         eth0
149                 </device>
150                 <bond_master_of/>
151                 <currently_attached>
152                         False
153                 </currently_attached>
154                 <gateway>
155                         
156                 </gateway>
157                 <network>
158                         OpaqueRef:83e4a934-aeb5-e6f0-a743-d1c7ef7364c5
159                 </network>
160         </pif>
161         <pif ref="OpaqueRef:eea8da94-a5e6-18fc-34a7-5e9b5a235806">
162                 <VLAN_slave_of/>
163                 <tunnel_access_PIF_of/>
164                 <management>
165                         False
166                 </management>
167                 <bond_slave_of>
168                         OpaqueRef:NULL
169                 </bond_slave_of>
170                 <uuid>
171                         df8d35c2-cc3a-a623-7065-d987a29feb75
172                 </uuid>
173                 <IP>
174                         
175                 </IP>
176                 <VLAN_master_of>
177                         OpaqueRef:NULL
178                 </VLAN_master_of>
179                 <VLAN>
180                         -1
181                 </VLAN>
182                 <netmask>
183                         
184                 </netmask>
185                 <other_config/>
186                 <MAC>
187                         00:1b:21:29:ce:51
188                 </MAC>
189                 <ip_configuration_mode>
190                         None
191                 </ip_configuration_mode>
192                 <DNS>
193                         
194                 </DNS>
195                 <device>
196                         eth4
197                 </device>
198                 <bond_master_of/>
199                 <currently_attached>
200                         False
201                 </currently_attached>
202                 <gateway>
203                         
204                 </gateway>
205                 <network>
206                         OpaqueRef:bf51b4d3-7bdc-ea55-ba21-539b150b0531
207                 </network>
208         </pif>
209         <pif ref="OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768">
210                 <VLAN_slave_of/>
211                 <tunnel_access_PIF_of/>
212                 <management>
213                         False
214                 </management>
215                 <bond_slave_of>
216                         OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
217                 </bond_slave_of>
218                 <uuid>
219                         2f87fc95-5ab4-571a-2487-3f4ac1985663
220                 </uuid>
221                 <IP>
222                         
223                 </IP>
224                 <VLAN_master_of>
225                         OpaqueRef:NULL
226                 </VLAN_master_of>
227                 <VLAN>
228                         -1
229                 </VLAN>
230                 <netmask>
231                         
232                 </netmask>
233                 <other_config/>
234                 <MAC>
235                         00:22:19:22:4b:b1
236                 </MAC>
237                 <ip_configuration_mode>
238                         None
239                 </ip_configuration_mode>
240                 <DNS>
241                         
242                 </DNS>
243                 <device>
244                         eth1
245                 </device>
246                 <bond_master_of/>
247                 <currently_attached>
248                         False
249                 </currently_attached>
250                 <gateway>
251                         
252                 </gateway>
253                 <network>
254                         OpaqueRef:92b41bf6-aa21-45d3-1c86-c87a5fa98f7d
255                 </network>
256         </pif>
257         <pif ref="OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e">
258                 <VLAN_slave_of/>
259                 <tunnel_access_PIF_of/>
260                 <management>
261                         False
262                 </management>
263                 <bond_slave_of>
264                         OpaqueRef:NULL
265                 </bond_slave_of>
266                 <uuid>
267                         d2dfdab3-daf4-afea-f055-a25a0d24d714
268                 </uuid>
269                 <IP>
270                         
271                 </IP>
272                 <VLAN_master_of>
273                         OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c
274                 </VLAN_master_of>
275                 <VLAN>
276                         4
277                 </VLAN>
278                 <netmask>
279                         
280                 </netmask>
281                 <other_config/>
282                 <MAC>
283                         fe:ff:ff:ff:ff:ff
284                 </MAC>
285                 <ip_configuration_mode>
286                         None
287                 </ip_configuration_mode>
288                 <DNS>
289                         
290                 </DNS>
291                 <device>
292                         bond0
293                 </device>
294                 <bond_master_of/>
295                 <currently_attached>
296                         True
297                 </currently_attached>
298                 <gateway>
299                         
300                 </gateway>
301                 <network>
302                         OpaqueRef:a63afad0-fb4c-b4a4-3696-cbb3d88afc47
303                 </network>
304         </pif>
305         <pif ref="OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc">
306                 <VLAN_slave_of>
307                         <master>
308                                 OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297
309                         </master>
310                 </VLAN_slave_of>
311                 <tunnel_access_PIF_of/>
312                 <management>
313                         False
314                 </management>
315                 <bond_slave_of>
316                         OpaqueRef:NULL
317                 </bond_slave_of>
318                 <uuid>
319                         f4ba396e-a993-a592-5fbc-a1d566afb59e
320                 </uuid>
321                 <IP>
322                         10.0.0.188
323                 </IP>
324                 <VLAN_master_of>
325                         OpaqueRef:NULL
326                 </VLAN_master_of>
327                 <VLAN>
328                         -1
329                 </VLAN>
330                 <netmask>
331                         255.0.0.0
332                 </netmask>
333                 <other_config/>
334                 <MAC>
335                         00:15:17:a0:29:81
336                 </MAC>
337                 <ip_configuration_mode>
338                         Static
339                 </ip_configuration_mode>
340                 <DNS>
341                         
342                 </DNS>
343                 <device>
344                         eth3
345                 </device>
346                 <bond_master_of/>
347                 <currently_attached>
348                         True
349                 </currently_attached>
350                 <gateway>
351                         
352                 </gateway>
353                 <network>
354                         OpaqueRef:d9189da2-d00b-61ba-8a6d-ac42cc868e32
355                 </network>
356         </pif>
357         <pif ref="OpaqueRef:205d1186-2cd1-d5e6-45e4-ea1698ea6e15">
358                 <VLAN_slave_of/>
359                 <tunnel_access_PIF_of/>
360                 <management>
361                         True
362                 </management>
363                 <bond_slave_of>
364                         OpaqueRef:NULL
365                 </bond_slave_of>
366                 <uuid>
367                         646ca9a1-36ad-e2f9-3ecc-1e5622c201c2
368                 </uuid>
369                 <IP>
370                         172.18.3.188
371                 </IP>
372                 <VLAN_master_of>
373                         OpaqueRef:NULL
374                 </VLAN_master_of>
375                 <VLAN>
376                         -1
377                 </VLAN>
378                 <netmask>
379                         255.255.0.0
380                 </netmask>
381                 <other_config/>
382                 <MAC>
383                         00:15:17:a0:29:80
384                 </MAC>
385                 <ip_configuration_mode>
386                         DHCP
387                 </ip_configuration_mode>
388                 <DNS>
389                         
390                 </DNS>
391                 <device>
392                         eth2
393                 </device>
394                 <bond_master_of/>
395                 <currently_attached>
396                         True
397                 </currently_attached>
398                 <gateway>
399                         
400                 </gateway>
401                 <network>
402                         OpaqueRef:6e7c6e81-6b5e-b91f-e1f9-9e028567bdfe
403                 </network>
404         </pif>
405         <pif ref="OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3">
406                 <VLAN_slave_of/>
407                 <tunnel_access_PIF_of/>
408                 <management>
409                         False
410                 </management>
411                 <bond_slave_of>
412                         OpaqueRef:NULL
413                 </bond_slave_of>
414                 <uuid>
415                         3941edd2-865b-8dd8-61f0-199f5e1fa652
416                 </uuid>
417                 <IP>
418                         
419                 </IP>
420                 <VLAN_master_of>
421                         OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297
422                 </VLAN_master_of>
423                 <VLAN>
424                         123
425                 </VLAN>
426                 <netmask>
427                         
428                 </netmask>
429                 <other_config/>
430                 <MAC>
431                         fe:ff:ff:ff:ff:ff
432                 </MAC>
433                 <ip_configuration_mode>
434                         None
435                 </ip_configuration_mode>
436                 <DNS>
437                         
438                 </DNS>
439                 <device>
440                         eth3
441                 </device>
442                 <bond_master_of/>
443                 <currently_attached>
444                         True
445                 </currently_attached>
446                 <gateway>
447                         
448                 </gateway>
449                 <network>
450                         OpaqueRef:240fb5f8-addc-6ea3-f921-2a42b42acd17
451                 </network>
452         </pif>
453         <pif ref="OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11">
454                 <VLAN_slave_of>
455                         <master>
456                                 OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c
457                         </master>
458                 </VLAN_slave_of>
459                 <tunnel_access_PIF_of/>
460                 <management>
461                         False
462                 </management>
463                 <bond_slave_of>
464                         OpaqueRef:NULL
465                 </bond_slave_of>
466                 <uuid>
467                         6c0327a9-afa3-fc19-6798-a1bfe20095ed
468                 </uuid>
469                 <IP>
470                         
471                 </IP>
472                 <VLAN_master_of>
473                         OpaqueRef:NULL
474                 </VLAN_master_of>
475                 <VLAN>
476                         -1
477                 </VLAN>
478                 <netmask>
479                         
480                 </netmask>
481                 <other_config/>
482                 <MAC>
483                         00:22:19:22:4b:af
484                 </MAC>
485                 <ip_configuration_mode>
486                         None
487                 </ip_configuration_mode>
488                 <DNS>
489                         
490                 </DNS>
491                 <device>
492                         bond0
493                 </device>
494                 <bond_master_of>
495                         <slave>
496                                 OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e
497                         </slave>
498                 </bond_master_of>
499                 <currently_attached>
500                         True
501                 </currently_attached>
502                 <gateway>
503                         
504                 </gateway>
505                 <network>
506                         OpaqueRef:ec1e5037-60ea-97e5-54b8-39bdb43c071a
507                 </network>
508         </pif>
509         <bond ref="OpaqueRef:86d81bcf-0d25-90b2-cb11-af2007bd586e">
510                 <master>
511                         OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
512                 </master>
513                 <uuid>
514                         dad825f1-6d81-386e-849c-5589281e53e1
515                 </uuid>
516                 <slaves>
517                         <slave>
518                                 OpaqueRef:e0955887-571f-17fc-a971-61c1ec7d81b6
519                         </slave>
520                         <slave>
521                                 OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768
522                         </slave>
523                 </slaves>
524         </bond>
525         <vlan ref="OpaqueRef:4c0eb823-4d96-da1d-e75f-411b85badb0c">
526                 <tagged_PIF>
527                         OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
528                 </tagged_PIF>
529                 <uuid>
530                         841814da-d0d2-9da4-0b2e-b6143480bbfb
531                 </uuid>
532                 <untagged_PIF>
533                         OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e
534                 </untagged_PIF>
535         </vlan>
536         <vlan ref="OpaqueRef:e623e1d6-cd02-be8d-820d-49d65c710297">
537                 <tagged_PIF>
538                         OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc
539                 </tagged_PIF>
540                 <uuid>
541                         399279a2-5ccd-5368-9af3-8622a1f1ac82
542                 </uuid>
543                 <untagged_PIF>
544                         OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3
545                 </untagged_PIF>
546         </vlan>
547         <network ref="OpaqueRef:a63afad0-fb4c-b4a4-3696-cbb3d88afc47">
548                 <PIFs>
549                         <PIF>
550                                 OpaqueRef:d2d1e51e-4da9-3163-8f57-bb683429335e
551                         </PIF>
552                 </PIFs>
553                 <bridge>
554                         xapi2
555                 </bridge>
556                 <other_config/>
557                 <uuid>
558                         99be2da4-6c33-6f8e-49ea-3bc592fe3c85
559                 </uuid>
560         </network>
561         <network ref="OpaqueRef:d9189da2-d00b-61ba-8a6d-ac42cc868e32">
562                 <PIFs>
563                         <PIF>
564                                 OpaqueRef:2bc0fab5-523a-4125-609d-212391f5f6fc
565                         </PIF>
566                 </PIFs>
567                 <bridge>
568                         xenbr3
569                 </bridge>
570                 <other_config/>
571                 <uuid>
572                         2902ae1b-8013-897a-b697-0b200ea3aaa5
573                 </uuid>
574         </network>
575         <network ref="OpaqueRef:ec1e5037-60ea-97e5-54b8-39bdb43c071a">
576                 <PIFs>
577                         <PIF>
578                                 OpaqueRef:69c904bb-8da9-3424-485b-8b47c2d3ef11
579                         </PIF>
580                 </PIFs>
581                 <bridge>
582                         xapi1
583                 </bridge>
584                 <other_config/>
585                 <uuid>
586                         45cbbb43-113d-a712-3231-c6463f253cef
587                 </uuid>
588         </network>
589         <network ref="OpaqueRef:92b41bf6-aa21-45d3-1c86-c87a5fa98f7d">
590                 <PIFs>
591                         <PIF>
592                                 OpaqueRef:2956e6c8-487e-981c-85ff-c84796418768
593                         </PIF>
594                 </PIFs>
595                 <bridge>
596                         xenbr1
597                 </bridge>
598                 <other_config/>
599                 <uuid>
600                         99f8771a-645a-26a3-e06c-30a401f1d009
601                 </uuid>
602         </network>
603         <network ref="OpaqueRef:6e7c6e81-6b5e-b91f-e1f9-9e028567bdfe">
604                 <PIFs>
605                         <PIF>
606                                 OpaqueRef:205d1186-2cd1-d5e6-45e4-ea1698ea6e15
607                         </PIF>
608                 </PIFs>
609                 <bridge>
610                         xenbr2
611                 </bridge>
612                 <other_config/>
613                 <uuid>
614                         d08c8749-0c8f-9e8d-ce25-fd364661ee99
615                 </uuid>
616         </network>
617         <network ref="OpaqueRef:83e4a934-aeb5-e6f0-a743-d1c7ef7364c5">
618                 <PIFs>
619                         <PIF>
620                                 OpaqueRef:e0955887-571f-17fc-a971-61c1ec7d81b6
621                         </PIF>
622                 </PIFs>
623                 <bridge>
624                         xenbr0
625                 </bridge>
626                 <other_config>
627                         <vswitch-disable-in-band>
628                                 true
629                         </vswitch-disable-in-band>
630                 </other_config>
631                 <uuid>
632                         c9eecb03-560d-61de-b6a8-56dfc766f67e
633                 </uuid>
634         </network>
635         <network ref="OpaqueRef:bf51b4d3-7bdc-ea55-ba21-539b150b0531">
636                 <PIFs>
637                         <PIF>
638                                 OpaqueRef:eea8da94-a5e6-18fc-34a7-5e9b5a235806
639                         </PIF>
640                 </PIFs>
641                 <bridge>
642                         xenbr4
643                 </bridge>
644                 <other_config/>
645                 <uuid>
646                         d2c14c89-29cc-51d4-7664-633eff02b2ad
647                 </uuid>
648         </network>
649         <network ref="OpaqueRef:0b7354a4-8f4b-aa08-2f16-a22c117e4211">
650                 <PIFs/>
651                 <bridge>
652                         xapi0
653                 </bridge>
654                 <other_config/>
655                 <uuid>
656                         dc0f0632-c2aa-1b78-2fea-0d3a23c51740
657                 </uuid>
658         </network>
659         <network ref="OpaqueRef:240fb5f8-addc-6ea3-f921-2a42b42acd17">
660                 <PIFs>
661                         <PIF>
662                                 OpaqueRef:8e3e37e6-ebb9-087e-0201-f6a56bf554c3
663                         </PIF>
664                 </PIFs>
665                 <bridge>
666                         xapi3
667                 </bridge>
668                 <other_config/>
669                 <uuid>
670                         db7bdc03-074d-42ae-fc73-9b06de1d57f6
671                 </uuid>
672         </network>
673         <pool ref="OpaqueRef:a765d06c-fc82-cc67-8f6c-fd8db45f6a84">
674                 <other_config>
675                         <vswitch-controller-fail-mode>
676                                 secure
677                         </vswitch-controller-fail-mode>
678                 </other_config>
679         </pool>
680 </xenserver-network-configuration>
681 EOF
682 }
683
684 ifr_run () {
685     ./interface-reconfigure --root-prefix="`pwd`" --no-syslog "$@"
686 }
687
688 ifr_filter () {
689     sed -n -e "s,`pwd`,,g" -e 's/ -- /\
690     /g' -e '/^Running command:/!p' stderr
691 }]
692 m4_divert_pop([PREPARE_TESTS])
693
694 \f
695 AT_BANNER([interface-reconfigure])
696
697 AT_SETUP([non-VLAN, non-bond])
698 AT_KEYWORDS([interface-reconfigure])
699 AT_SKIP_IF([$non_ascii_cwd])
700 ifr_setup
701
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
706 action_up: xenbr2
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
733 /sbin/ifup xenbr2
734 /sbin/update-issue
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
738 ]])
739
740 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xenbr2], [0],
741   [# DO NOT EDIT: This file (ifcfg-xenbr2) was autogenerated by interface-reconfigure
742 XEMANAGED=yes
743 DEVICE=xenbr2
744 ONBOOT=no
745 NOZEROCONF=yes
746 TYPE=Ethernet
747 BOOTPROTO=dhcp
748 PERSISTENT_DHCLIENT=yes
749 MTU=1500
750 ])
751
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])
755
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
760 action_down: xenbr2
761 /sbin/ifdown xenbr2
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
769 ]])
770
771 AT_CLEANUP
772 \f
773 AT_SETUP([VLAN, non-bond])
774 AT_KEYWORDS([interface-reconfigure])
775 AT_SKIP_IF([$non_ascii_cwd])
776 ifr_setup
777
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
782 action_up: xapi3
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"
806 /sbin/ifup xapi3
807 /sbin/update-issue
808 Committing changes to /etc/sysconfig/network-scripts/route-xapi3 configuration
809 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi3 configuration
810 ]])
811
812 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi3], [0],
813   [# DO NOT EDIT: This file (ifcfg-xapi3) was autogenerated by interface-reconfigure
814 XEMANAGED=yes
815 DEVICE=xapi3
816 ONBOOT=no
817 NOZEROCONF=yes
818 TYPE=Ethernet
819 BOOTPROTO=none
820 MTU=1500
821 ])
822
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])
826
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
831 action_down: xapi3
832 /sbin/ifdown xapi3
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
843 ]])
844
845 AT_CLEANUP
846 \f
847 AT_SETUP([Bond, non-VLAN])
848 AT_KEYWORDS([interface-reconfigure])
849 AT_SKIP_IF([$non_ascii_cwd])
850 ifr_setup
851
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])
858
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
863 action_up: xapi1
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
895 /sbin/ifup xapi1
896 action_up: bring up bond0
897 /sbin/ifconfig bond0 up
898 /sbin/update-issue
899 Committing changes to /etc/sysconfig/network-scripts/route-xapi1 configuration
900 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi1 configuration
901 ]])
902
903 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi1], [0],
904   [# DO NOT EDIT: This file (ifcfg-xapi1) was autogenerated by interface-reconfigure
905 XEMANAGED=yes
906 DEVICE=xapi1
907 ONBOOT=no
908 NOZEROCONF=yes
909 TYPE=Ethernet
910 BOOTPROTO=none
911 MTU=1500
912 ])
913
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])
917
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
922 action_down: xapi1
923 /sbin/ifdown xapi1
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
932 ]])
933
934 AT_CLEANUP
935 \f
936 AT_SETUP([VLAN on bond])
937 AT_KEYWORDS([interface-reconfigure])
938 AT_SKIP_IF([$non_ascii_cwd])
939 ifr_setup
940
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])
947
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
952 action_up: xapi2
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"
988 /sbin/ifup xapi2
989 action_up: bring up bond0
990 /sbin/ifconfig bond0 up
991 /sbin/update-issue
992 Committing changes to /etc/sysconfig/network-scripts/route-xapi2 configuration
993 Committing changes to /etc/sysconfig/network-scripts/ifcfg-xapi2 configuration
994 ]])
995
996 AT_CHECK([cat etc/sysconfig/network-scripts/ifcfg-xapi2], [0],
997   [# DO NOT EDIT: This file (ifcfg-xapi2) was autogenerated by interface-reconfigure
998 XEMANAGED=yes
999 DEVICE=xapi2
1000 ONBOOT=no
1001 NOZEROCONF=yes
1002 TYPE=Ethernet
1003 BOOTPROTO=none
1004 MTU=1500
1005 ])
1006
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])
1010
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
1015 action_down: xapi2
1016 /sbin/ifdown xapi2
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
1028 ]])
1029
1030 AT_CLEANUP
1031
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
1035 dnl readded.
1036 AT_SETUP([Re-create port with different types])
1037 AT_KEYWORDS([interface-reconfigure])
1038 OVS_VSWITCHD_START(
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])
1042
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])
1046
1047 AT_CLEANUP