awscc_sqs_queue (Resource)

The AWS::SQS::Queue resource creates an SQS standard or FIFO queue. Keep the following caveats in mind:

For more information about creating FIFO (first-in-first-out) queues, see Creating an queue () in the Developer Guide.

Example Usage

To create a SQS queue with tags

resource "awscc_sqs_queue" "terraform_awscc_queue" {
  queue_name                        = "terraform-awscc-queue-example"
  delay_seconds                     = 90
  maximum_message_size              = 2048
  message_retention_period          = 86400
  receive_message_wait_time_seconds = 10
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]

}

To create a SQS FIFO queue

resource "awscc_sqs_queue" "terraform_awscc_queue_fifo" {
  queue_name                  = "terraform-awscc-queue-example.fifo"
  fifo_queue                  = true
  content_based_deduplication = true
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]

}

To create a SQS High-throughput FIFO queue

resource "awscc_sqs_queue" "terraform_awscc_queue_high_throughput" {
  queue_name            = "terraform-awscc-queue-high-throughput-example.fifo"
  fifo_queue            = true
  deduplication_scope   = "messageGroup"
  fifo_throughput_limit = "perMessageGroupId"
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]

}

To create a SQS Dead-letter queue

resource "awscc_sqs_queue" "terraform_awscc_queue" {
  queue_name                        = "terraform-awscc-queue-example"
  delay_seconds                     = 90
  maximum_message_size              = 2048
  message_retention_period          = 86400
  receive_message_wait_time_seconds = 10
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]
}

resource "awscc_sqs_queue" "terraform_awscc_queue_deadletter" {
  queue_name = "terraform-awscc-queue-deadletter-example"
  redrive_allow_policy = jsonencode({
    redrivePermission = "byQueue",
    sourceQueueArns   = [awscc_sqs_queue.terraform_awscc_queue.arn]
  })
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]

}

To create a SQS queue using Server-side encryption (SSE)

resource "awscc_sqs_queue" "terraform_awscc_queue_sse" {
  queue_name              = "terraform-awscc-queue-sse-example"
  sqs_managed_sse_enabled = true
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]
}

To create a SQS queue using KMS key

resource "awscc_sqs_queue" "terraform_awscc_queue_kms" {
  queue_name                        = "terraform-awscc-queue-kms-example"
  kms_master_key_id                 = "alias/aws/sqs"
  kms_data_key_reuse_period_seconds = 300
  tags = [{
    key   = "Modified By"
    value = "AWSCC"
  }]

}

Schema

Optional

Read-Only

Nested Schema for tags

Required:

Import

Import is supported using the following syntax:

$ terraform import awscc_sqs_queue.example <resource ID>