X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=snaps%2Fopenstack%2Fcreate_flavor.py;h=ec4c76524fca36067316008fbc9f55e8f974c84e;hb=dcc190a885955b03760458ed637749de1dfd3554;hp=f1c7ee3f45f4d152cb1135cbe81ac0ed2ad5eabb;hpb=49402e392615f0326b37c772ed91671bd880f92d;p=snaps.git diff --git a/snaps/openstack/create_flavor.py b/snaps/openstack/create_flavor.py index f1c7ee3..ec4c765 100644 --- a/snaps/openstack/create_flavor.py +++ b/snaps/openstack/create_flavor.py @@ -20,7 +20,7 @@ from snaps.openstack.utils import nova_utils __author__ = 'spisarski' -logger = logging.getLogger('create_image') +logger = logging.getLogger('create_flavor') MEM_PAGE_SIZE_ANY = {'hw:mem_page_size': 'any'} MEM_PAGE_SIZE_LARGE = {'hw:mem_page_size': 'large'} @@ -60,9 +60,8 @@ class OpenStackFlavor: self.__flavor = nova_utils.create_flavor( self.__nova, self.flavor_settings) if self.flavor_settings.metadata: - self.__flavor.set_keys(self.flavor_settings.metadata) - self.__flavor = nova_utils.get_flavor_by_name( - self.__nova, self.flavor_settings.name) + nova_utils.set_flavor_keys(self.__nova, self.__flavor, + self.flavor_settings.metadata) else: logger.info('Did not create flavor due to cleanup mode') @@ -150,28 +149,36 @@ class FlavorSettings: self.metadata = None if not self.name or not self.ram or not self.disk or not self.vcpus: - raise Exception( + raise FlavorSettingsError( 'The attributes name, ram, disk, and vcpus are required for' 'FlavorSettings') if not isinstance(self.ram, int): - raise Exception('The ram attribute must be a integer') + raise FlavorSettingsError('The ram attribute must be a integer') if not isinstance(self.disk, int): - raise Exception('The ram attribute must be a integer') + raise FlavorSettingsError('The ram attribute must be a integer') if not isinstance(self.vcpus, int): - raise Exception('The vcpus attribute must be a integer') + raise FlavorSettingsError('The vcpus attribute must be a integer') if self.ephemeral and not isinstance(self.ephemeral, int): - raise Exception('The ephemeral attribute must be an integer') + raise FlavorSettingsError( + 'The ephemeral attribute must be an integer') if self.swap and not isinstance(self.swap, int): - raise Exception('The swap attribute must be an integer') + raise FlavorSettingsError('The swap attribute must be an integer') if self.rxtx_factor and not isinstance(self.rxtx_factor, (int, float)): - raise Exception( + raise FlavorSettingsError( 'The is_public attribute must be an integer or float') if self.is_public and not isinstance(self.is_public, bool): - raise Exception('The is_public attribute must be a boolean') + raise FlavorSettingsError( + 'The is_public attribute must be a boolean') + + +class FlavorSettingsError(Exception): + """ + Exception to be thrown when an flavor settings are incorrect + """