
common_spec value is used for all entries in template_specs dict. As lookup() returns as result a merge of defaults and template_specs values, there is no need to maintain 2 different dicts (defaults and common_spec). So merge them into one dict (defaults) to make the code simpler. Signed-off-by: Aline Manera <alinefm@linux.vnet.ibm.com> --- src/kimchi/osinfo.py | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/kimchi/osinfo.py b/src/kimchi/osinfo.py index d1ae424..05c685e 100644 --- a/src/kimchi/osinfo.py +++ b/src/kimchi/osinfo.py @@ -33,37 +33,32 @@ SUPPORTED_ARCHS = {'x86': ('i386', 'i686', 'x86_64'), 'ppc64le': ('ppc64le')} -common_spec = {'cpus': 1, 'memory': 1024, 'disks': [{'index': 0, 'size': 10, - 'format': 'qcow2'}], - 'cdrom_bus': 'ide', 'cdrom_index': 2, 'mouse_bus': 'ps2'} - - -template_specs = {'x86': {'old': dict(common_spec, disk_bus='ide', +template_specs = {'x86': {'old': dict(disk_bus='ide', nic_model='e1000', sound_model='ich6'), - 'modern': dict(common_spec, disk_bus='virtio', + 'modern': dict(disk_bus='virtio', nic_model='virtio', sound_model='ich6')}, - 'power': {'old': dict(common_spec, disk_bus='scsi', + 'power': {'old': dict(disk_bus='scsi', nic_model='spapr-vlan', cdrom_bus='scsi', kbd_type="kbd", kbd_bus='usb', mouse_bus='usb', tablet_bus='usb', memory=1280), - 'modern': dict(common_spec, disk_bus='virtio', + 'modern': dict(disk_bus='virtio', nic_model='virtio', cdrom_bus='scsi', kbd_bus='usb', kbd_type="kbd", mouse_bus='usb', tablet_bus='usb', memory=1280)}, - 'ppc64le': {'old': dict(common_spec, disk_bus='virtio', + 'ppc64le': {'old': dict(disk_bus='virtio', nic_model='virtio', cdrom_bus='scsi', kbd_bus='usb', kbd_type="keyboard", mouse_bus='usb', tablet_bus='usb', memory=1280), - 'modern': dict(common_spec, disk_bus='virtio', + 'modern': dict(disk_bus='virtio', nic_model='virtio', cdrom_bus='scsi', kbd_bus='usb', @@ -93,7 +88,11 @@ icon_available_distros = [icon[5:-4] for icon in glob.glob1('%s/images/' defaults = {'networks': ['default'], 'storagepool': '/storagepools/default', 'domain': 'kvm', 'arch': os.uname()[4], - 'graphics': {'type': 'vnc', 'listen': '127.0.0.1'}} + 'graphics': {'type': 'vnc', 'listen': '127.0.0.1'}, + 'cpus': 1, + 'memory': 1024, + 'disks': [{'index': 0, 'size': 10, 'format': 'qcow2'}], + 'cdrom_bus': 'ide', 'cdrom_index': 2, 'mouse_bus': 'ps2'} def _get_arch(): @@ -106,9 +105,10 @@ def get_template_default(template_type, field): host_arch = _get_arch() # Assuming 'power' = 'ppc64le' because lookup() does the same, # claiming libvirt compatibility. - if host_arch in ('power', 'ppc64le'): - return template_specs['power'][template_type][field] - return template_specs[host_arch][template_type][field] + host_arch = 'power' if host_arch == 'ppc64le' else host_arch + tmpl_defaults = copy.deepcopy(defaults) + tmpl_defaults.update(template_specs[host_arch][template_type]) + return tmpl_defaults[field] def lookup(distro, version): -- 2.1.0