Skip to content

UKHomeOffice/acp-tf-sqs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Module usage:

     module "sqs" {
       source               = "git::https://github.com/UKHomeOffice/acp-tf-sqs?ref=master"
       name                 = "new-sqs"
       environment          = "env"
       sqs_iam_user         = "new-sqs-user"
       iam_user_policy_name = "new-sqs-policy"

       policy = <<POLICY
     {
       "Version": "2012-10-17",
       "Id": "sqspolicy",
       "Statement": [
         {
           "Sid": "First",
           "Effect": "Allow",
           "Principal": "*",
           "Action": "sqs:SendMessage",
           "Resource": "arn:aws:sqs:*:*:new-sqs",
           "Condition": {
             "ArnEquals": {
               "aws:SourceArn": "arn:aws:sqs:*:*:new-sqs"
             }
           }
         }
       ]
     }
     POLICY
     }

Requirements

Name Version
terraform >= 1.0
aws ~> 3.70

Providers

Name Version
aws 3.71.0

Modules

Name Source Version
self_serve_access_keys git::https://github.com/UKHomeOffice/acp-tf-self-serve-access-keys v0.1.0

Resources

Name Type
aws_iam_user.sqs_iam_user resource
aws_iam_user.sqs_with_kms_iam_user resource
aws_iam_user_policy.sqs_user_policy resource
aws_iam_user_policy.sqs_with_kms_and_redrive_user_policy resource
aws_iam_user_policy.sqs_with_kms_user_policy resource
aws_iam_user_policy.sqs_with_redrive_user_policy resource
aws_kms_alias.sqs_kms_alias resource
aws_kms_key.sqs_kms_key resource
aws_sqs_queue.queue resource
aws_sqs_queue.queue_with_kms resource
aws_sqs_queue.queue_with_kms_and_no_policy resource
aws_sqs_queue.queue_with_kms_and_redrive resource
aws_sqs_queue.queue_with_kms_and_redrive_and_no_policy resource
aws_sqs_queue.queue_with_kms_key_and_no_policy resource
aws_sqs_queue.queue_with_no_policy resource
aws_sqs_queue.queue_with_redrive resource
aws_sqs_queue.queue_with_redrive_and_no_policy resource
aws_sqs_queue_policy.sqs_policy resource
aws_sqs_queue_policy.sqs_with_kms_and_redrive_policy resource
aws_sqs_queue_policy.sqs_with_kms_policy resource
aws_sqs_queue_policy.sqs_with_redrive_policy resource
aws_caller_identity.current data source
aws_iam_policy_document.sqs_default_policy_document data source
aws_iam_policy_document.sqs_policy_document data source
aws_iam_policy_document.sqs_with_kms_and_redrive_default_policy_document data source
aws_iam_policy_document.sqs_with_kms_and_redrive_policy_document data source
aws_iam_policy_document.sqs_with_kms_default_policy_document data source
aws_iam_policy_document.sqs_with_kms_policy_document data source
aws_iam_policy_document.sqs_with_redrive_default_policy_document data source
aws_iam_policy_document.sqs_with_redrive_policy_document data source
aws_region.current data source

Inputs

Name Description Type Default Required
cidr_blocks A list of network cidr blocks which are permitted access list [] no
content_based_deduplication Enables content-based deduplication for FIFO queues bool false no
deduplication_scope Specifies whether message deduplication occurs at the message group or queue level string "queue" no
delay_seconds The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes) number 0 no
email_addresses A list of email addresses for key rotation notifications. list [] no
enable_set_attributes Should the created iam user be permitted to set queue attributes bool true no
environment The environment the SQS is running in i.e. dev, prod etc any n/a yes
fifo_queue Boolean designating a FIFO queue bool false no
fifo_throughput_limit Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group string "perQueue" no
iam_user_policy_name The policy name of attached to the user any n/a yes
key_rotation Enable email notifications for old IAM keys. string "true" no
kms_alias KMS key alias name for SQS string "" no
kms_key KMS key id name for SQS string "" no
kms_key_policy KMS key policy (uses a default policy if omitted) string "" no
max_message_size The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB) number 262144 no
max_receive_count The max receive count for a queue before Amazon SQS moves the message to a dead-letter queue string "10" no
message_retention_seconds The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days) number 345600 no
name A descriptive name for the SQS instance any n/a yes
number_of_users The number of user to generate credentials for number 1 no
policy The JSON policy for the SQS queue (uses a default when stated) string "" no
receive_wait_time_seconds The time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds) number 0 no
redrive_arn AWS ARN for the SQS redirect queue string "" no
sqs_iam_user The name of the iam user assigned to the created sqs bucket any n/a yes
tags A map of tags to add to all resources map {} no
visibility_timeout_seconds The visibility timeout for the queue. An integer from 0 to 43200 (12 hours) number 30 no

Outputs

Name Description
kms_key The kms key generated for the sqs resource
sqs_arn The SQS Queue ARN we just created
sqs_arn_kms The SQS KMS Queue ARN we just created
sqs_arn_kms_and_no_policy The SQS KMS Queue ARN we just created
sqs_arn_kms_and_redrive The SQS KMS Queue ARN we just created
sqs_arn_kms_and_redrive_and_no_policy The SQS KMS Queue ARN we just created
sqs_arn_no_policy The SQS KMS Queue ARN we just created
sqs_arn_redrive The SQS KMS Queue ARN we just created
sqs_arn_redrive_and_no_policy The SQS KMS Queue ARN we just created
sqs_id The SQS Queue ID we just created
sqs_id_kms The SQS KMS Queue ID we just created
sqs_id_kms_and_no_policy The SQS KMS Queue ID we just created
sqs_id_kms_and_redrive The SQS KMS Queue ID we just created
sqs_id_kms_and_redrive_and_no_policy The SQS KMS Queue ID we just created
sqs_id_no_policy The SQS KMS Queue ID we just created
sqs_id_redrive The SQS KMS Queue ID we just created
sqs_id_redrive_and_no_policy The SQS KMS Queue ID we just created

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages