Commit 27a49425 authored by Alain Takoudjou's avatar Alain Takoudjou

kvm recipe fixup: disk creation and image download

parent 65f69645
...@@ -13,6 +13,10 @@ from random import shuffle ...@@ -13,6 +13,10 @@ from random import shuffle
import glob import glob
import re import re
import ssl
opener = urllib.FancyURLopener(context=ssl._create_unverified_context())
# XXX: give all of this through parameter, don't use this as template, but as module # XXX: give all of this through parameter, don't use this as template, but as module
qemu_img_path = '%(qemu-img-path)s' qemu_img_path = '%(qemu-img-path)s'
qemu_path = '%(qemu-path)s' qemu_path = '%(qemu-path)s'
...@@ -127,8 +131,9 @@ if not os.path.exists(disk_path) and virtual_hard_drive_url != '': ...@@ -127,8 +131,9 @@ if not os.path.exists(disk_path) and virtual_hard_drive_url != '':
downloaded_disk = disk_path downloaded_disk = disk_path
if virtual_hard_drive_gzipped == 'true': if virtual_hard_drive_gzipped == 'true':
downloaded_disk = '%%s.gz' %% disk_path downloaded_disk = '%%s.gz' %% disk_path
urllib.urlretrieve(virtual_hard_drive_url, downloaded_disk) opener.retrieve(virtual_hard_drive_url, downloaded_disk)
except: except:
if os.path.exists(downloaded_disk):
os.remove(downloaded_disk) os.remove(downloaded_disk)
raise raise
md5sum = virtual_hard_drive_md5sum.strip() md5sum = virtual_hard_drive_md5sum.strip()
...@@ -157,7 +162,7 @@ if not os.path.exists(disk_path) and virtual_hard_drive_url != '': ...@@ -157,7 +162,7 @@ if not os.path.exists(disk_path) and virtual_hard_drive_url != '':
# XXX: move to Buildout profile # XXX: move to Buildout profile
if not os.path.exists(disk_path): if not os.path.exists(disk_path):
print('Creating virtual hard drive...') print('Creating virtual hard drive...')
subprocess.Popen([qemu_img_path, 'create' ,'-f', 'qcow2', subprocess.check_call([qemu_img_path, 'create' ,'-f', 'qcow2',
disk_path, '%%sG' %% disk_size]) disk_path, '%%sG' %% disk_size])
print('Done.') print('Done.')
...@@ -186,7 +191,7 @@ if disk_storage_dict: ...@@ -186,7 +191,7 @@ if disk_storage_dict:
disk_list = glob.glob('%%s.*' %% os.path.join(path, 'kvm_virtual_disk')) disk_list = glob.glob('%%s.*' %% os.path.join(path, 'kvm_virtual_disk'))
if disk_list == []: if disk_list == []:
print('Creating one additional virtual hard drive...') print('Creating one additional virtual hard drive...')
subprocess.Popen([qemu_img_path, 'create' ,'-f', '%%s' %% external_disk_format, process = subprocess.check_call([qemu_img_path, 'create' ,'-f', '%%s' %% external_disk_format,
disk_filepath, '%%sG' %% external_disk_size]) disk_filepath, '%%sG' %% external_disk_size])
else: else:
# Cannot change or recreate if disk is exists # Cannot change or recreate if disk is exists
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment