{"treedata":{"name":"root","toggled":true,"children":[{"name":".circleci","children":[{"name":"config.yml","path":".circleci/config.yml","sha":"21d743226336a97981df06ddcf46c4944f673088"}]},{"name":".gitignore","path":".gitignore","sha":"bfcf0f01c753a2c1fa62631296e5678ddd416083"},{"name":".pre-commit-config.yaml","path":".pre-commit-config.yaml","sha":"40dde37cbe2716be382b51fccaabc08b113a5eba"},{"name":"CODEOWNERS","path":"CODEOWNERS","sha":"7a0d0af6ee8361466674f9367fab91f9037b5c75"},{"name":"LICENSE.txt","path":"LICENSE.txt","sha":"947b78a929481a192a688dbcd8aef5e959102397"},{"name":"README.md","path":"README.md","sha":"1035c5544b541a64aed7073b3998e4cb7b916ab2"},{"name":"examples","children":[{"name":"kinesis","children":[{"name":"README.md","path":"examples/kinesis/README.md","sha":"43778d84a16b259bb5f8b24b299e32776f7d7e98"},{"name":"main.tf","path":"examples/kinesis/main.tf","sha":"b6dd4c8c3267b20a5d741fecde7b2034f367ef8b"},{"name":"outputs.tf","path":"examples/kinesis/outputs.tf","sha":"952a5cf88e478992ff28c5774e8f37217f89d296"},{"name":"vars.tf","path":"examples/kinesis/vars.tf","sha":"1065357fa72427e839f19969607c92a217fecd62"}]},{"name":"sns","children":[{"name":"README.md","path":"examples/sns/README.md","sha":"323e05c6b41a125783d38eb76943b26d853164cd"},{"name":"main.tf","path":"examples/sns/main.tf","sha":"1cfe09c3bf5c3dcbd0f7dfd4e7af340df7d63e13"},{"name":"outputs.tf","path":"examples/sns/outputs.tf","sha":"4f3fdd7d70805e7c7520730b598dca452785ecc5"},{"name":"vars.tf","path":"examples/sns/vars.tf","sha":"ce2397751c5f0367aa13ad4fc10d6401a37581d6"}]},{"name":"sqs","children":[{"name":"dead-letter-queue","children":[{"name":"README.md","path":"examples/sqs/dead-letter-queue/README.md","sha":"fbd73ba28e7244fbbed0a460b1659f7535f9c7a0"},{"name":"main.tf","path":"examples/sqs/dead-letter-queue/main.tf","sha":"8622bf4319fadcac9ef609b4ff1d2da5c1ab073f"},{"name":"outputs.tf","path":"examples/sqs/dead-letter-queue/outputs.tf","sha":"b3d13e984797fab06aeae8abfd599b2a0f12d9f8"},{"name":"vars.tf","path":"examples/sqs/dead-letter-queue/vars.tf","sha":"5b3ac6fcefb6b6a9b2ed2bf31a08fb319277b643"}]},{"name":"fifo-queue-with-encryption","children":[{"name":"README.md","path":"examples/sqs/fifo-queue-with-encryption/README.md","sha":"3dd276e81e8a297512286032cb59b3c7791f0c09"},{"name":"main.tf","path":"examples/sqs/fifo-queue-with-encryption/main.tf","sha":"e2f883c2c2c3a4aa43ed1fc6886754cc6d347aac"},{"name":"outputs.tf","path":"examples/sqs/fifo-queue-with-encryption/outputs.tf","sha":"b3d13e984797fab06aeae8abfd599b2a0f12d9f8"},{"name":"vars.tf","path":"examples/sqs/fifo-queue-with-encryption/vars.tf","sha":"7155c480e6a99e1d998ec9a222e2d16378d90ce3"}]},{"name":"no-dead-letter-queue","children":[{"name":"README.md","path":"examples/sqs/no-dead-letter-queue/README.md","sha":"230fa6ad1262430afe23c3e25f6ad5a2dc026281"},{"name":"main.tf","path":"examples/sqs/no-dead-letter-queue/main.tf","sha":"3c02c4942198e45c6f909bd6399d5edfb0c5dd13"},{"name":"outputs.tf","path":"examples/sqs/no-dead-letter-queue/outputs.tf","sha":"e2961511ac23997e4f3e2cd8991559ffdbe10ac0"},{"name":"vars.tf","path":"examples/sqs/no-dead-letter-queue/vars.tf","sha":"a59eb9bc6c66d8a4bf9d9e4d418e78c21035d67b"}]}]}]},{"name":"modules","children":[{"name":"kinesis","children":[{"name":"README.md","path":"modules/kinesis/README.md","sha":"f6976e871de510215552ef64db08d7d878c8a862"},{"name":"main.tf","path":"modules/kinesis/main.tf","sha":"60f9588057fdbfdf3dfc3b80391c249f3632aeca"},{"name":"outputs.tf","path":"modules/kinesis/outputs.tf","sha":"c491c37209211ac71aafe29e4a70e8ddf24a9fc6"},{"name":"vars.tf","path":"modules/kinesis/vars.tf","sha":"05eda4a9971bf6eb41be75a7107dda0964e93a5d"}]},{"name":"sns","children":[{"name":"README.md","path":"modules/sns/README.md","sha":"6f65db0ba0bb4c5ff2cd24dbbd0a415204c241bd"},{"name":"main.tf","path":"modules/sns/main.tf","sha":"0039bcbb8857d3195a0b35a4aa988ac67e5fb6eb"},{"name":"outputs.tf","path":"modules/sns/outputs.tf","sha":"c260afae7877e81ff5c0653693f27324e60d5b03"},{"name":"vars.tf","path":"modules/sns/vars.tf","sha":"b2c4f56c68b415e1b7197975d3f4151e622d5de7"}]},{"name":"sqs","children":[{"name":"README.md","path":"modules/sqs/README.md","sha":"8efa2221f8f1ab43f5e6021be5da30c66f569b1d","toggled":true},{"name":"main.tf","path":"modules/sqs/main.tf","sha":"77aff380ade923f15bcc409f79c15a4cb9b14798"},{"name":"outputs.tf","path":"modules/sqs/outputs.tf","sha":"e1d941e64d321ac3f6f36ff7fa8f8c4d07ffe6c5"},{"name":"vars.tf","path":"modules/sqs/vars.tf","sha":"2bad3ffe3c039cbc9aa68fb80e818c06c4892844"}],"toggled":true}],"toggled":true},{"name":"test","children":[{"name":"README.md","path":"test/README.md","sha":"031cdc06d155eff31f9c5648a1c92ee5fb816ea0"},{"name":"common.go","path":"test/common.go","sha":"40d2843605f3b2ac99e9809b1f1947e6e6a746a3"},{"name":"go.mod","path":"test/go.mod","sha":"8d0b11b01d60abf1c0dd5f04ef926e05c7de3ad4"},{"name":"go.sum","path":"test/go.sum","sha":"4cb2c75f6c2c88b6aad107badb29b5446a233caf"},{"name":"kinesis_test.go","path":"test/kinesis_test.go","sha":"58ef5dd9285549020b2c4c92f6d5411588912ca1"},{"name":"sns_test.go","path":"test/sns_test.go","sha":"70ec0a9ac7a45ea698b0a82917e18ea86fd934ab"},{"name":"sqs_dead_letter_queue_test.go","path":"test/sqs_dead_letter_queue_test.go","sha":"11f10545aecb5485b532a556b98659955afbb83b"},{"name":"sqs_encrypted_fifo_queue_test.go","path":"test/sqs_encrypted_fifo_queue_test.go","sha":"541008f565f1a4317f0f097e19ab5a9a5e702d07"},{"name":"sqs_standard_test.go","path":"test/sqs_standard_test.go","sha":"e74e0f59ec971580fb9c9a64717b98a053430f39"}]}]},"detailsContent":"<h1 class=\"preview__body--title\" id=\"simple-queuing-service-sqs-module\">Simple Queuing Service (SQS) Module</h1><div class=\"preview__body--border\"></div><p>This module makes it easy to deploy an SQS queue along with policies for the topic.</p>\n<h2 class=\"preview__body--subtitle\" id=\"how-do-you-use-this-module\">How do you use this module?</h2>\n<ul>\n<li>See the <a href=\"/repos/v0.4.0/package-messaging/README.md\" class=\"preview__body--description--blue\">root README</a> for instructions on using Terraform modules.</li>\n<li>See the <a href=\"/repos/v0.4.0/package-messaging/examples\" class=\"preview__body--description--blue\">examples</a> folder for example usage.</li>\n<li>See <a href=\"/repos/v0.4.0/package-messaging/modules/sqs/vars.tf\" class=\"preview__body--description--blue\">vars.tf</a> for all the variables you can set on this module.</li>\n</ul>\n<h2 class=\"preview__body--subtitle\" id=\"deployment-examples\">Deployment Examples</h2>\n<h3 class=\"preview__body--subtitle\" id=\"restrict-access-only-by-ip\">Restrict Access Only By IP</h3>\n<p>An example with NO IAM AUTHENTICATION required, ONLY IP based restrictions are used. Allowed IPs based on the value of <code>var.allowed_cidr_blocks</code></p>\n<pre><span class=\"hljs-keyword\">module</span> <span class=\"hljs-string\">\"sqs\"</span> {\n source = <span class=\"hljs-string\">\"git::git@github.com:gruntwork-io/package-messaging.git//modules/sqs?ref=v0.1.4\"</span>\n\n name = <span class=\"hljs-string\">\"my-queue\"</span>\n\n apply_ip_queue_policy = true\n\n <span class=\"hljs-comment\"># Allow unauthenticated access from a CIDR block</span>\n allowed_cidr_blocks = [\n <span class=\"hljs-string\">\"10.10.1.0/22\"</span>\n ]\n \n visibility_timeout_seconds = <span class=\"hljs-number\">60</span>\n message_retention_seconds = <span class=\"hljs-number\">86400</span> <span class=\"hljs-comment\">#1 day</span>\n max_message_size = <span class=\"hljs-number\">131072</span> <span class=\"hljs-comment\">#128kb</span>\n delay_seconds = <span class=\"hljs-number\">10</span>\n receive_wait_time_seconds = <span class=\"hljs-number\">20</span>\n fifo_queue = true\n}\n</pre>\n<h3 class=\"preview__body--subtitle\" id=\"require-iam-permissions-for-queue-access\">Require IAM Permissions for Queue Access</h3>\n<p>An example of a queue policy is not used and permissions to the queue are handled outside of this module in IAM policies attached to roles or users.</p>\n<pre><span class=\"hljs-keyword\">module</span> <span class=\"hljs-string\">\"sqs\"</span> {\n source = <span class=\"hljs-string\">\"git::git@github.com:gruntwork-io/package-messaging.git//modules/sqs?ref=v0.1.4\"</span>\n\n name = <span class=\"hljs-string\">\"my-queue\"</span>\n \n visibility_timeout_seconds = <span class=\"hljs-number\">60</span>\n message_retention_seconds = <span class=\"hljs-number\">86400</span> <span class=\"hljs-comment\">#1 day</span>\n max_message_size = <span class=\"hljs-number\">131072</span> <span class=\"hljs-comment\">#128kb</span>\n delay_seconds = <span class=\"hljs-number\">10</span>\n receive_wait_time_seconds = <span class=\"hljs-number\">20</span>\n fifo_queue = true\n}\n</pre>\n<h3 class=\"preview__body--subtitle\" id=\"include-a-dead-letter-queue\">Include a Dead Letter Queue</h3>\n<p>An example of how to use this module to create a queue with a dead-letter queue.</p>\n<pre>module <span class=\"hljs-string\">\"sqs\"</span> {\n <span class=\"hljs-attr\">source</span> = <span class=\"hljs-string\">\"git::git@github.com:gruntwork-io/package-messaging.git//modules/sqs?ref=v0.1.4\"</span>\n\n <span class=\"hljs-attr\">name</span> = <span class=\"hljs-string\">\"my-queue-with-dead-letter\"</span>\n <span class=\"hljs-attr\">dead_letter_queue</span> = <span class=\"hljs-literal\">true</span>\n <span class=\"hljs-attr\">max_receive_count</span> = <span class=\"hljs-number\">10</span>\n}\n</pre>\n<h2 class=\"preview__body--subtitle\" id=\"how-do-i-access-the-sqs-queue\">How do I access the SQS queue?</h2>\n<p>This module includes several <a href=\"https://www.terraform.io/intro/getting-started/outputs.html\" class=\"preview__body--description--blue\" target=\"_blank\">Terraform outputs</a>,\nincluding:</p>\n<ol>\n<li><code>queue_arn</code>: The ARN of the created queue</li>\n<li><code>dead_letter_queue_arn</code> The ARN of the dead letter queue</li>\n</ol>\n","repoName":"package-messaging","repoRef":"v0.4.1","serviceDescriptor":{"serviceName":"SQS","serviceRepoName":"package-messaging","serviceRepoOrg":"gruntwork-io","serviceMainReadmePath":"/modules/sqs","cloudProviders":["aws"],"description":"Create SQS queues with support for FIFO, message retention, message delays, content-based deduplication, dead-letter queues, and access controls.","imageUrl":"sqs.png","licenseType":"subscriber","technologies":["Terraform"],"compliance":[],"tags":[""]},"serviceCategoryName":"Messaging & streaming","fileName":"README.md","filePath":"/modules/sqs","title":"Repo Browser: SQS","description":"Browse the repos in the Gruntwork Infrastructure as Code Library."}