MCPcopy Index your code
hub / github.com/retspen/webvirtcloud / create_network

Method create_network

vrtManager/network.py:36–68  ·  view source on GitHub ↗
(self, name, forward, gateway, mask, dhcp, bridge, openvswitch, fixed=False)

Source from the content-addressed store, hash-verified

34 self.wvm.networkDefineXML(xml)
35
36 def create_network(self, name, forward, gateway, mask, dhcp, bridge, openvswitch, fixed=False):
37 xml = """
38 <network>
39 <name>%s</name>""" % name
40 if forward in ['nat', 'route', 'bridge']:
41 xml += """<forward mode='%s'/>""" % forward
42 xml += """<bridge """
43 if forward in ['nat', 'route', 'none']:
44 xml += """stp='on' delay='0'"""
45 if forward == 'bridge':
46 xml += """name='%s'""" % bridge
47 xml += """/>"""
48 if openvswitch is True:
49 xml += """<virtualport type='openvswitch'/>"""
50 if forward != 'bridge':
51 xml += """
52 <ip address='%s' netmask='%s'>""" % (gateway, mask)
53 if dhcp:
54 xml += """<dhcp>
55 <range start='%s' end='%s' />""" % (dhcp[0], dhcp[1])
56 if fixed:
57 fist_oct = int(dhcp[0].strip().split('.')[3])
58 last_oct = int(dhcp[1].strip().split('.')[3])
59 for ip in range(fist_oct, last_oct + 1):
60 xml += """<host mac='%s' ip='%s.%s' />""" % (util.randomMAC(), gateway[:-2], ip)
61 xml += """</dhcp>"""
62
63 xml += """</ip>"""
64 xml += """</network>"""
65 self.define_network(xml)
66 net = self.get_network(name)
67 net.create()
68 net.setAutostart(1)
69
70
71class wvmNetwork(wvmConnect):

Callers 1

networksFunction · 0.80

Calls 2

define_networkMethod · 0.95
get_networkMethod · 0.80

Tested by

no test coverage detected