def _create_subscription_definition()

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