in gg_group_setup/cmd.py [0:0]
def _create_subscription_definition(gg_client, group_type, config):
"""
Configure routing subscriptions for a Greengrass group.
group_type: either default or an overridden group type
config: GroupConfigFile object used for routing subscriptions
"""
logging.info('[begin] Configuring routing subscriptions')
sub_info = gg_client.create_subscription_definition(
Name="{0}_routing".format(group_type.type_name)
)
logging.info('Created subscription definition: {0}'.format(sub_info))
subs = group_type.get_subscription_definition(config=config)
if subs is None:
logging.warning(
"[end] No SubscriptionDefinition exists in GroupType:{0}".format(
group_type.type_name)
)
return
subv = gg_client.create_subscription_definition_version(
SubscriptionDefinitionId=sub_info['Id'],
Subscriptions=subs
)
sub_arn = subv['Arn']
config['subscription_def'] = {
"id": sub_info['Id'],
"version_arn": sub_arn
}
logging.info('[end] Configured routing subscriptions')
return sub_arn