Provides an SNS topic resource
resource "aws_sns_topic" "user_updates" {
name = "user-updates-topic"
}
resource "aws_sns_topic" "user_updates" {
name = "user-updates-topic"
delivery_policy = <<EOF
{
"http": {
"defaultHealthyRetryPolicy": {
"minDelayTarget": 20,
"maxDelayTarget": 20,
"numRetries": 3,
"numMaxDelayRetries": 0,
"numNoDelayRetries": 0,
"numMinDelayRetries": 0,
"backoffFunction": "linear"
},
"disableSubscriptionOverrides": false,
"defaultThrottlePolicy": {
"maxReceivesPerSecond": 1
}
}
}
EOF
}
The <endpoint>_success_feedback_role_arn and <endpoint>_failure_feedback_role_arn arguments are used to give Amazon SNS write access to use CloudWatch Logs on your behalf. The <endpoint>_success_feedback_sample_rate argument is for specifying the sample rate percentage (0-100) of successfully delivered messages. After you configure the <endpoint>_failure_feedback_role_arn argument, then all failed message deliveries generate CloudWatch Logs.
The following arguments are supported:
name - (Optional) The friendly name for the SNS topic. By default generated by Terraform. name_prefix - (Optional) The friendly name for the SNS topic. Conflicts with name. display_name - (Optional) The display name for the SNS topic policy - (Optional) The fully-formed AWS policy as JSON delivery_policy - (Optional) The SNS delivery policy. More on AWS documentation application_success_feedback_role_arn - (Optional) The IAM role permitted to receive success feedback for this topic application_success_feedback_sample_rate - (Optional) Percentage of success to sample application_failure_feedback_role_arn - (Optional) IAM role for failure feedback http_success_feedback_role_arn - (Optional) The IAM role permitted to receive success feedback for this topic http_success_feedback_sample_rate - (Optional) Percentage of success to sample http_failure_feedback_role_arn - (Optional) IAM role for failure feedback lambda_success_feedback_role_arn - (Optional) The IAM role permitted to receive success feedback for this topic lambda_success_feedback_sample_rate - (Optional) Percentage of success to sample lambda_failure_feedback_role_arn - (Optional) IAM role for failure feedback sqs_success_feedback_role_arn - (Optional) The IAM role permitted to receive success feedback for this topic sqs_success_feedback_sample_rate - (Optional) Percentage of success to sample sqs_failure_feedback_role_arn - (Optional) IAM role for failure feedback In addition to all arguments above, the following attributes are exported:
id - The ARN of the SNS topic arn - The ARN of the SNS topic, as a more obvious property (clone of id) SNS Topics can be imported using the topic arn, e.g.
$ terraform import aws_sns_topic.user_updates arn:aws:sns:us-west-2:0123456789012:my-topic
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/aws/r/sns_topic.html