(self, name, forward, gateway, mask, dhcp, bridge, openvswitch, fixed=False)
| 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 | |
| 71 | class wvmNetwork(wvmConnect): |
no test coverage detected