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)