Skip to content

Commit

Permalink
[vs-test]: not forward routes with no-export community (#1869)
Browse files Browse the repository at this point in the history
* Revert "Revert "[vs-test]: not forward routes with no-export community (#1774)" (#1828)"

This reverts commit 6459275.

* [no-export]: move no export test under bgp folder

Signed-off-by: Sihui Han <sihan@microsoft.com>

* [no-export]: increase wait time to avoid random failure

Signed-off-by: Sihui Han <sihan@microsoft.com>
  • Loading branch information
sihuihan88 authored and lguohan committed Jul 24, 2018
1 parent 76391ba commit 216d2fa
Show file tree
Hide file tree
Showing 7 changed files with 92 additions and 2 deletions.
File renamed without changes.
13 changes: 13 additions & 0 deletions platform/vs/tests/bgp/files/no_export/bgpd.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
router bgp 65501
bgp router-id 1.1.1.1
no bgp default ipv4-unicast
neighbor 10.0.0.1 remote-as 65502
address-family ipv4
neighbor 10.0.0.1 activate
maximum-paths 64
exit-address-family
neighbor 10.0.0.3 remote-as 65503
address-family ipv4
neighbor 10.0.0.3 activate
maximum-paths 64
exit-address-family
21 changes: 21 additions & 0 deletions platform/vs/tests/bgp/files/no_export/exabgp1.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
neighbor 10.0.0.0 {
router-id 1.1.1.2;
local-address 10.0.0.1;
local-as 65502;
peer-as 65501;
group-updates false;

family{
ipv4 unicast;
}

static {
route 1.1.1.1/32{
next-hop 10.0.0.1;
community no-export;
}
route 2.2.2.2/32{
next-hop 10.0.0.1;
}
}
}
11 changes: 11 additions & 0 deletions platform/vs/tests/bgp/files/no_export/exabgp2.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
neighbor 10.0.0.2 {
router-id 1.1.1.3;
local-address 10.0.0.3;
local-as 65503;
peer-as 65501;
group-updates false;

family {
ipv4 unicast;
}
}
4 changes: 2 additions & 2 deletions platform/vs/tests/bgp/test_invalid_nexthop.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

def test_InvalidNexthop(dvs):

dvs.copy_file("/etc/quagga/", "bgp/files/bgpd.conf")
dvs.copy_file("/etc/quagga/", "bgp/files/invalid_nexthop/bgpd.conf")
dvs.runcmd("supervisorctl start bgpd")
dvs.runcmd("ip addr add fc00::1/126 dev Ethernet0")
dvs.runcmd("ifconfig Ethernet0 up")
Expand All @@ -18,7 +18,7 @@ def test_InvalidNexthop(dvs):

print dvs.runcmd("supervisorctl status")

p = dvs.servers[0].runcmd_async("exabgp -d bgp/files/invalid_nexthop.conf")
p = dvs.servers[0].runcmd_async("exabgp -d bgp/files/invalid_nexthop/invalid_nexthop.conf")

time.sleep(10)

Expand Down
45 changes: 45 additions & 0 deletions platform/vs/tests/bgp/test_no_export.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
from swsscommon import swsscommon
import os
import re
import time
import json

def test_bounce(dvs):
dvs.servers[0].runcmd("pkill -f exabgp")
dvs.copy_file("/etc/quagga/", "bgp/files/no_export/bgpd.conf")
dvs.runcmd("supervisorctl start bgpd")
dvs.runcmd("ip addr add 10.0.0.0/31 dev Ethernet0")
dvs.runcmd("ifconfig Ethernet0 up")

dvs.runcmd("ip addr add 10.0.0.2/31 dev Ethernet4")
dvs.runcmd("ifconfig Ethernet4 up")

dvs.servers[0].runcmd("ip addr add 10.0.0.1/31 dev eth0")
dvs.servers[0].runcmd("ifconfig eth0 up")

dvs.servers[1].runcmd("ip addr add 10.0.0.3/31 dev eth0")
dvs.servers[1].runcmd("ifconfig eth0 up")

time.sleep(5)

p1 = dvs.servers[0].runcmd_async("exabgp -d bgp/files/no_export/exabgp1.conf")
p2 = dvs.servers[1].runcmd_async("exabgp -d bgp/files/no_export/exabgp2.conf")

time.sleep(60)

sum_res = dvs.runcmd(["vtysh", "-c", "show ip bgp sum"])
all_route = dvs.runcmd(["vtysh", "-c", "show ip bgp"])
announce_route = dvs.runcmd(["vtysh", "-c", "show ip bgp neighbors 10.0.0.3 advertised-routes"])

p1.terminate()
p1 = p1.wait()

p2.terminate()
p2 = p2.wait()

print sum_res
print announce_route
assert "1.1.1.1/32" in all_route
assert "1.1.1.1/32" not in announce_route
assert "2.2.2.2/32" in all_route
assert "2.2.2.2/32" in announce_route

0 comments on commit 216d2fa

Please sign in to comment.