1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2025-01-23 21:55:20 +00:00

clone instance fixes mac address not separated by :, to correct format xx:xx:...

This commit is contained in:
Jan Krcmar 2016-01-29 14:44:19 +01:00
parent 646bdbbe0e
commit a34c55d3bc

View file

@ -612,6 +612,14 @@ class wvmInstance(wvmConnect):
pool) pool)
return storage return storage
def fix_mac(self, mac):
if ":" in mac:
return mac
# if mac does not contain ":", try to split into tuples and join with ":"
n = 2
mac_tuples = [mac[i:i+n] for i in range(0, len(mac), n)]
return ':'.join(mac_tuples)
def clone_instance(self, clone_data): def clone_instance(self, clone_data):
clone_dev_path = [] clone_dev_path = []
@ -624,7 +632,8 @@ class wvmInstance(wvmConnect):
for num, net in enumerate(tree.findall('devices/interface')): for num, net in enumerate(tree.findall('devices/interface')):
elm = net.find('mac') elm = net.find('mac')
elm.set('address', clone_data['net-' + str(num)]) mac_address = self.fix_mac(clone_data['net-' + str(num)])
elm.set('address', mac_address)
for disk in tree.findall('devices/disk'): for disk in tree.findall('devices/disk'):
if disk.get('device') == 'disk': if disk.get('device') == 'disk':