/
setup_physical_routers.py
71 lines (65 loc) · 3.06 KB
/
setup_physical_routers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import os
import sys
import json
import ConfigParser
import ast
import logging
from physical_router_fixture import PhysicalRouterFixture
from common.contrail_test_init import ContrailTestInit
from physical_device_fixture import PhysicalDeviceFixture
from vcpe_router_fixture import VpeRouterFixture
from virtual_router_fixture import VirtualRouterFixture
logging.getLogger('urllib3.connectionpool').setLevel(logging.WARN)
logging.getLogger('paramiko.transport').setLevel(logging.WARN)
if __name__ == "__main__":
init_obj = ContrailTestInit(sys.argv[1])
for (device, device_dict) in init_obj.physical_routers_data.iteritems():
if device_dict['type'] in ['router', 'tor']:
dm_managed = True if device_dict['type'] == 'tor' else False
phy_router_obj = PhysicalRouterFixture(
device_dict['name'],
device_dict['mgmt_ip'],
asn=device_dict['asn'],
model=device_dict.get('model', 'mx'),
vendor=device_dict.get('vendor', 'juniper'),
ssh_username=device_dict.get('ssh_username'),
ssh_password=device_dict.get('ssh_password'),
tunnel_ip=device_dict.get('tunnel_ip'),
ports=device_dict.get('ports'),
dm_managed=device_dict.get('dm_managed', dm_managed),
tsn=device_dict.get('tsn'),
role=device_dict.get('role'),
cfgm_ip=init_obj.cfgm_ip,
auth_server_ip=init_obj.auth_ip,
inputs=init_obj,
username=init_obj.admin_username,
password=init_obj.admin_password,
project_name=init_obj.admin_tenant,
domain=init_obj.admin_domain,
orchestrator=init_obj.orchestrator
)
phy_router_obj.setUp()
assert phy_router_obj.verify_bgp_peer(), 'BGP peering is not up.'
if device_dict['type'] == 'vcenter_gateway':
vrouter_obj = VirtualRouterFixture(device_dict['name'],
'embedded',
cfgm_ip=init_obj.cfgm_ip,
auth_server_ip=init_obj.auth_ip,
)
vrouter_obj.setUp()
vcpe_router_obj = VpeRouterFixture(
device_dict['name'], device_dict['mgmt_ip'],
ssh_username=device_dict['ssh_username'],
ssh_password=device_dict['ssh_password'],
mgmt_ip=device_dict['mgmt_ip'],
ports=device_dict['ports'],
cfgm_ip=init_obj.cfgm_ip,
auth_server_ip=init_obj.auth_ip,
)
vcpe_router_obj.setUp()
vcpe_router_obj.vrouter_ref_set(vrouter_obj.vr)
vcpe_router_obj.setup_physical_ports()
for port in device_dict['ports']:
ifup_cmd = 'ifconfig %s up'%port
init_obj.run_cmd_on_server(device_dict['mgmt_ip'],ifup_cmd )
# end for