This module sets up an SNS topic and adds up to 5 subscriptions.
module "sns" {
source = "git@github.com:rackspace-infrastructure-automation/aws-terraform-sns//?ref=v0.12.0"
name = "my-example-topic"
}
Full working references are available at examples
Several changes were required while adding terraform 0.12 compatibility. The following changes should be
made when upgrading from a previous release to version 0.12.0 or higher.
Several resources were updated with new logical names, better meet current Rackspace style guides.
The following statements can be used to update existing resources. In each command, <MODULE_NAME>
should be replaced with the logic name used where the module is referenced.
terraform state mv module.<MODULE_NAME>.aws_sns_topic.MySNSTopic module.<MODULE_NAME>.aws_sns_topic.topic
terraform state mv module.<MODULE_NAME>.aws_sns_topic_subscription.Subscription1 module.<MODULE_NAME>.aws_sns_topic_subscription.subscription1
terraform state mv module.<MODULE_NAME>.aws_sns_topic_subscription.Subscription2 module.<MODULE_NAME>.aws_sns_topic_subscription.subscription2
terraform state mv module.<MODULE_NAME>.aws_sns_topic_subscription.Subscription3 module.<MODULE_NAME>.aws_sns_topic_subscription.subscription3
terraform state mv module.<MODULE_NAME>.aws_sns_topic_subscription.Subscription4 module.<MODULE_NAME>.aws_sns_topic_subscription.subscription4
terraform state mv module.<MODULE_NAME>.aws_sns_topic_subscription.Subscription5 module.<MODULE_NAME>.aws_sns_topic_subscription.subscription5
The following module variables were updated to better meet current Rackspace style guides:
topic_name
->name
This module does not support email
or email-json
as a protocol as Terraform does not currently support them. See: https://www.terraform.io/docs/providers/aws/r/sns_topic_subscription.html for more details.
Name | Version |
---|---|
aws | >= 2.7.0 |
Name | Description | Type | Default | Required |
---|---|---|---|---|
create_subscription_1 | Set to true to enable subscription. | bool |
false |
no |
create_subscription_2 | Set to true to enable subscription. | bool |
false |
no |
create_subscription_3 | Set to true to enable subscription. | bool |
false |
no |
create_subscription_4 | Set to true to enable subscription. | bool |
false |
no |
create_subscription_5 | Set to true to enable subscription. | bool |
false |
no |
endpoint_1 | The subscription's endpoint #1. | string |
"" |
no |
endpoint_2 | The subscription's endpoint #2. | string |
"" |
no |
endpoint_3 | The subscription's endpoint #3. | string |
"" |
no |
endpoint_4 | The subscription's endpoint #4. | string |
"" |
no |
endpoint_5 | The subscription's endpoint #5. | string |
"" |
no |
endpoint_auto_confirms_1 | Boolean indicating whether endpoint #1 is capable of auto confirming subscription (required for HTTP protocols). | bool |
false |
no |
endpoint_auto_confirms_2 | Boolean indicating whether endpoint #2 is capable of auto confirming subscription (required for HTTP protocols). | bool |
false |
no |
endpoint_auto_confirms_3 | Boolean indicating whether endpoint #3 is capable of auto confirming subscription (required for HTTP protocols). | bool |
false |
no |
endpoint_auto_confirms_4 | Boolean indicating whether endpoint #4 is capable of auto confirming subscription (required for HTTP protocols). | bool |
false |
no |
endpoint_auto_confirms_5 | Boolean indicating whether endpoint #5 is capable of auto confirming subscription (required for HTTP protocols). | bool |
false |
no |
name | A name for the topic | string |
n/a | yes |
protocol_1 | The protocol you want to use in your endpoint #1. Supported protocols include: http, https, sms, sqs, application, lambda. | string |
"" |
no |
protocol_2 | The protocol you want to use in your endpoint #2. Supported protocols include: http, https, sms, sqs, application, lambda. | string |
"" |
no |
protocol_3 | The protocol you want to use in your endpoint #3. Supported protocols include: http, https, sms, sqs, application, lambda. | string |
"" |
no |
protocol_4 | The protocol you want to use in your endpoint #4. Supported protocols include: http, https, sms, sqs, application, lambda. | string |
"" |
no |
protocol_5 | The protocol you want to use in your endpoint #5. Supported protocols include: http, https, sms, sqs, application, lambda. | string |
"" |
no |
Name | Description |
---|---|
topic_arn | The ARN of the SNS Topic |
topic_id | The id of the SNS topic. |