def __init__()

in syndicate/core/transform/terraform/terraform_template.py [0:0]


    def __init__(self, provider, profile, region):
        self.aws_lambda_function = []
        self.aws_iam_policy = []
        self.aws_iam_role = []
        self.aws_dynamodb_table = []
        self.aws_appautoscaling_target = []
        self.aws_appautoscaling_policy = []
        self.aws_api_gateway_rest_api = []
        self.aws_api_gateway_resource = []
        self.aws_api_gateway_method_response = []
        self.aws_api_gateway_integration = []
        self.aws_api_gateway_stage = []
        self.aws_api_gateway_deployment = []
        self.aws_api_gateway_integration_response = []
        self.aws_api_gateway_method = []
        self.aws_s3_bucket = []
        self.aws_cloudwatch_event_rule = []
        self.aws_cloudwatch_event_target = []
        self.aws_sns_topic = []
        self.aws_sqs_queue = []
        self.aws_cloudwatch_metric_alarm = []
        self.aws_kinesis_stream = []
        self.aws_sns_platform_application = []
        self.aws_api_gateway_authorizer = []
        self.aws_cognito_identity_pool = []
        self.aws_cognito_identity_pool_roles_attachment = []
        self.aws_lambda_provisioned_concurrency_config = []
        self.aws_lambda_alias = []
        self.cloud_watch_log_group = []
        self.aws_sns_topic_policy = []
        self.aws_batch_job_definition = []
        self.aws_batch_compute_environment = []
        self.aws_batch_job_queue = []
        self.aws_iam_instance_profile = []
        self.aws_iam_role_policy_attachment = []
        self.aws_lambda_event_source_mapping = []
        self.aws_iam_role_policy = []
        self.aws_sns_topic_subscription = []
        self.aws_lambda_permission = []
        self.aws_s3_bucket_notification = []
        self.aws_sqs_queue_policy = []
        self.aws_api_gateway_request_validator = []
        self.aws_lambda_layer_version = []

        self.compose_resources_mapping = {
            LAMBDA_RESOURCE_NAME: self._aws_lambda,
            IAM_POLICY_RESOURCE_NAME: self._aws_iam_policy,
            IAM_ROLE_RESOURCE_NAME: self._aws_iam_role,
            DYNAMO_DB_TABLE_RESOURCE_NAME: self._aws_dynamodb_table,
            APP_AUTOSCALING_TARGET_RESOURCE_NAME: self._aws_appautoscaling_target,
            APP_AUTOSCALING_POLICY_RESOURCE_NAME: self._aws_appautoscaling_policy,
            API_GATEWAY_REST_API_RESOURCE_NAME: self._aws_api_gateway_rest_api,
            API_GATEWAY_RESOURCE_RESOURCE_NAME: self._aws_api_gateway_resource,
            API_GATEWAY_METHOD_RESPONSE_RESOURCE_NAME: self._aws_api_gateway_method_response,
            API_GATEWAY_INTEGRATION_RESOURCE_NAME: self._aws_api_gateway_integration,
            API_GATEWAY_STAGE_RESOURCE_NAME: self._aws_api_gateway_stage,
            API_GATEWAY_DEPLOYMENT_RESOURCE_NAME: self._aws_api_gateway_deployment,
            API_GATEWAY_INTEGRATION_RESPONSE_RESOURCE_NAME: self._aws_api_gateway_integration_response,
            API_GATEWAY_METHOD_RESOURCE_NAME: self._aws_api_gateway_method,
            S3_BUCKET_RESOURCE_NAME: self._aws_aws_s3_bucket,
            CLOUD_WATCH_EVENT_RULE: self._aws_cloudwatch_event_rule,
            CLOUD_WATCH_EVENT_TARGET: self._aws_cloudwatch_event_target,
            SNS_TOPIC_RESOURCE: self._aws_sns_topic,
            SQS_QUEUE_RESOURCE: self._aws_sqs_queue,
            CLOUD_WATCH_ALARM: self._aws_cloudwatch_metric_alarm,
            KINESIS_STREAM_RESOURCE: self._aws_kinesis_stream,
            SNS_APPLICATION_RESOURCE: self._aws_sns_platform_application,
            AWS_API_GATEWAY_AUTHORIZER: self._aws_api_gateway_authorizer,
            AWS_COGNITO_IDENTITY_POOL: self._aws_cognito_identity_pool,
            AWS_COGNITO_IDENTITY_POOL_ROLES_ATTACHMENT: self._aws_cognito_identity_pool_roles_attachment,
            AWS_LAMBDA_PROVISIONED_CONCURRENCY_CONFIG: self._aws_lambda_provisioned_concurrency_config,
            AWS_LAMBDA_ALIAS: self._aws_lambda_alias,
            CLOUD_WATCH_LOG_GROUP: self._cloud_watch_log_group,
            SNS_TOPIC_POLICY: self._aws_sns_topic_policy,
            AWS_BATCH_JOB_DEFINITION: self._aws_batch_job_definition,
            AWS_BATCH_COMPUTE_ENVIRONMENT: self._aws_batch_compute_environment,
            AWS_BATCH_JOB_QUEUE: self._aws_batch_job_queue,
            AWS_IAM_INSTANCE_PROFILE: self._aws_iam_instance_profile,
            AWS_IAM_ROLE_POLICY_ATTACHMENT: self._aws_iam_role_policy_attachment,
            AWS_LAMBDA_EVENT_SOURCE_MAPPING: self._aws_lambda_event_source_mapping,
            AWS_IAM_ROLE_POLICY: self._aws_iam_role_policy,
            AWS_SNS_TOPIC_SUBSCRIPTION: self._aws_sns_topic_subscription,
            AWS_LAMBDA_PERMISSION: self._aws_lambda_permission,
            AWS_S3_BUCKET_NOTIFICATION: self._aws_s3_bucket_notification,
            AWS_SQS_POLICY: self._aws_sqs_queue_policy,
            AWS_API_GATEWAY_REQUEST_VALIDATOR: self._aws_api_gateway_request_validator,
            AWS_LAMBDA_LAYER_VERSION: self._aws_lambda_layer_version
        }

        self.provider = provider
        self.resources = list()
        self.providers = list()
        default_provider = {
            "profile": profile,
            "region": region
        }
        self.providers.append(default_provider)