def _create_device_definition()

in gg_group_setup/cmd.py [0:0]


    def _create_device_definition(gg_client, group_type, config, group_name):
        device_def = group_type.get_device_definition(config=config)
        device_def_id = config['device_def']['id']
        if device_def is None:
            logging.warning("No DeviceDefinition exists in GroupType:{0}".format(
                group_type.type_name)
            )
            return

        if device_def_id is None or len(device_def_id) == 0:
            dl = gg_client.create_device_definition(
                Name="{0}_device_def".format(group_name))
            device_def_id = dl['Id']
            dlv = gg_client.create_device_definition_version(
                DeviceDefinitionId=device_def_id,
                Devices=device_def
            )
            dl_arn = dlv['Arn']
            logging.info("Created Device definition ARN:{0}".format(dl_arn))
            config['device_def'] = {'id': dl['Id'], 'version_arn': dl_arn}
            logging.info("DeviceDefinitionId: {0}".format(device_def_id))
            return dl_arn

        else:
            logging.info("DeviceDefinition already exists:{0}".format(
                device_def_id)
            )
            return