Add support for flavor metadata

Change-Id: I1a909f4fe8aaaeb720ffb9fd1319081812e88b43
This commit is contained in:
ahothan 2016-09-20 18:09:41 -07:00
parent 8afceddbe6
commit 6231f60073
2 changed files with 11 additions and 2 deletions

View File

@ -109,6 +109,10 @@ client:
ram: 2048
# Size of local disk in GB
disk: 0
# metadata are supported and can be added if needed
# example:
#extra_specs:
#"hw:cpu_policy": dedicated
# Assign floating IP for every client side test VM
# Default: no floating IP (only assign internal fixed IP)

View File

@ -113,20 +113,25 @@ class Kloud(object):
nova_client = self.tenant_list[0].user_list[0].nova_client
flavor_manager = base_compute.Flavor(nova_client)
flavor_dict = self.scale_cfg.flavor
extra_specs = flavor_dict.pop('extra_specs', None)
if self.storage_mode:
flavor_dict['ephemeral'] = self.scale_cfg['storage_stage_configs']['disk_size'] \
if self.scale_cfg['storage_stage_configs']['target'] == 'ephemeral' else 0
else:
flavor_dict['ephemeral'] = 0
if self.testing_side:
flv = flavor_manager.create_flavor('KB.client', override=True, **flavor_dict)
self.res_logger.log('flavors', vars(flv)['name'], vars(flv)['id'])
flv = flavor_manager.create_flavor('KB.proxy', override=True,
ram=2048, vcpus=1, disk=0, ephemeral=0)
self.res_logger.log('flavors', vars(flv)['name'], vars(flv)['id'])
flv = flavor_manager.create_flavor('KB.client', override=True, **flavor_dict)
self.res_logger.log('flavors', vars(flv)['name'], vars(flv)['id'])
else:
flv = flavor_manager.create_flavor('KB.server', override=True, **flavor_dict)
self.res_logger.log('flavors', vars(flv)['name'], vars(flv)['id'])
if extra_specs:
flv.set_keys(extra_specs)
def delete_resources(self):
# Deleting flavors created by KloudBuster