This folder contains the tests for the modules in this repo.
Running the tests locally
Note #1: Many of these tests create real resources in an AWS account. That means they cost money to run, especially
if you don't clean up after yourself. Please be considerate of the resources you create and take extra care to clean
everything up when you're done!
Note #2: Never hit CTRL + C or cancel a build once tests are running or the cleanup tasks won't run!
Note #3: We set -timeout 45m on all tests not because they necessarily take 45 minutes, but because Go has a
default test timeout of 10 minutes, after which it does a SIGQUIT, preventing the tests from properly cleaning up
after themselves. Therefore, we set a timeout of 45 minutes to make sure all tests have enough time to finish and
cleanup. If you are using aws-vault to manage AWS credentials through iam roles, adjusting the session length with
the --assume-role-ttl flag might also be necessary.
Add your AWS credentials as environment variables: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
For some of the tests, you also need to set the GITHUB_OAUTH_TOKEN environment variable to a valid GitHub
auth token with "repo" access. You can generate one here: https://github.com/settings/tokens
Run all the tests
cdtest
go test -v -timeout 45m -parallel 128
Run a specific test
To run a specific test called TestFoo:
cdtest
go test -v -timeout 45m -parallel 128 -run TestFoo
Questions? Ask away.
We're here to talk about our services, answer any questions, give advice, or just to chat.
{"treedata":{"name":"root","toggled":true,"children":[{"name":".circleci","children":[{"name":"config.yml","path":".circleci/config.yml","sha":"78844016d0305c58ef66e4e4dd557d644d08643c"},{"name":"post-upgrade-test-results.sh","path":".circleci/post-upgrade-test-results.sh","sha":"a4867e8fbdc334b7a90259568ee41ea577fbe764"},{"name":"set-upgrade-test-vars.sh","path":".circleci/set-upgrade-test-vars.sh","sha":"04ccab865d51c1169f7ae4648c38a3d98a9889ab"}]},{"name":".github","children":[{"name":"ISSUE_TEMPLATE","children":[{"name":"bug_report.md","path":".github/ISSUE_TEMPLATE/bug_report.md","sha":"d2e87e27c601e423865ed660ec697082470ca60f"},{"name":"feature_request.md","path":".github/ISSUE_TEMPLATE/feature_request.md","sha":"023a33099be2336476930c96e17ff1ba5dc55348"}]},{"name":"pull_request_template.md","path":".github/pull_request_template.md","sha":"6b100e40e323b5b07f40ed30616277c51c9f4b9e"}]},{"name":".gitignore","path":".gitignore","sha":"f269ad202cb96c5ed31e7d2bdd7b2f9b829f0687"},{"name":".patcher","children":[{"name":"patches","children":[{"name":"v0.33.0","children":[{"name":"aws-provider-4.x","children":[{"name":"bump_provider.sh","path":".patcher/patches/v0.33.0/aws-provider-4.x/bump_provider.sh","sha":"d3daee144dd21814811d998e5ae69796b9956509"},{"name":"create_script_for_terraform_init.sh","path":".patcher/patches/v0.33.0/aws-provider-4.x/create_script_for_terraform_init.sh","sha":"b447b73d0e86a97ed6f2b0701a1a3bcf27374ce4"},{"name":"patch.yaml","path":".patcher/patches/v0.33.0/aws-provider-4.x/patch.yaml","sha":"981f19ed594cc1caffc602014d10ce311c19dd90"}]}]}]}]},{"name":".pre-commit-config.yaml","path":".pre-commit-config.yaml","sha":"23068872ca60d7f40ae10c05ea8e5915d04056dc"},{"name":"CODEOWNERS","path":"CODEOWNERS","sha":"5ec6c488d1e6577b86c42b21fb2daf162c3e160a"},{"name":"LICENSE.txt","path":"LICENSE.txt","sha":"f4e3d9bd4717a044ed31ad847a300eee74371a78"},{"name":"README.md","path":"README.md","sha":"76b4c3a155b70511647affe68676437ea7487739"},{"name":"_docs","children":[{"name":"cloudwatch-icon.png","path":"_docs/cloudwatch-icon.png","sha":"47443df949488ef42c8460a3ff23d0acab695e59"}]},{"name":"examples","children":[{"name":"alb-alarms","children":[{"name":"README.md","path":"examples/alb-alarms/README.md","sha":"ef0db18677a4fa8d12f6c890d94b442bf30f132a"},{"name":"main.tf","path":"examples/alb-alarms/main.tf","sha":"b8bc4b05188394c99df1c7c08eaab4c60ae344ed"},{"name":"outputs.tf","path":"examples/alb-alarms/outputs.tf","sha":"6fa5c1b548602ee8912c973ad05e3aec40cd32b0"},{"name":"variables.tf","path":"examples/alb-alarms/variables.tf","sha":"6f9edf33c508701e9bae1d7c8304295952e482b7"}]},{"name":"alb-target-group-alarms","children":[{"name":"README.md","path":"examples/alb-target-group-alarms/README.md","sha":"e0b8d977ae330122cdaa876e28219f0f7d5364ad"},{"name":"main.tf","path":"examples/alb-target-group-alarms/main.tf","sha":"87c18576de1d608e651afa69a3bfae73a59c88c5"},{"name":"outputs.tf","path":"examples/alb-target-group-alarms/outputs.tf","sha":"c43657ddd3a1c40eb354c5192c4ecd3ebb26cf47"},{"name":"variables.tf","path":"examples/alb-target-group-alarms/variables.tf","sha":"7410e57ed960de8fbfdfa64a841d3752966d5326"}]},{"name":"asg-alarms","children":[{"name":"README.md","path":"examples/asg-alarms/README.md","sha":"10eb8a798dbbb80db76c32bd9eb6488a8fe484ad"},{"name":"main.tf","path":"examples/asg-alarms/main.tf","sha":"8b1102c8cd363f2f37ef8eccb664f8fa5900f8cc"},{"name":"outputs.tf","path":"examples/asg-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/asg-alarms/variables.tf","sha":"c57fd6487ae4fa0687e580536f6a9884d3acec82"}]},{"name":"cloudwatch-agent","children":[{"name":"README.md","path":"examples/cloudwatch-agent/README.md","sha":"a20e7e5dcfcb53fb7a093f78e8d27588bb1425d1"},{"name":"main.tf","path":"examples/cloudwatch-agent/main.tf","sha":"4f6ccfabe1288b42fc2e14f28482878c4c3e3aa3"},{"name":"outputs.tf","path":"examples/cloudwatch-agent/outputs.tf","sha":"665dd2b857c42bfb167e606d964de352de1a6ac4"},{"name":"packer","children":[{"name":"build.json","path":"examples/cloudwatch-agent/packer/build.json","sha":"6de08f8f545315266d8bef83f63c47e5c134fe96"}]},{"name":"user-data","children":[{"name":"user-data.sh","path":"examples/cloudwatch-agent/user-data/user-data.sh","sha":"953387d2b3ec71cf966a817ef53e08280ddbef29"}]},{"name":"variables.tf","path":"examples/cloudwatch-agent/variables.tf","sha":"75a8150cb55f06b214d4ddc2e7be9aa75153be98"}]},{"name":"cloudwatch-dashboard","children":[{"name":"README.md","path":"examples/cloudwatch-dashboard/README.md","sha":"08f0a36f254b3c064e822d13d43d44e619dda84d"},{"name":"main.tf","path":"examples/cloudwatch-dashboard/main.tf","sha":"99e0c9a3a1270558d366470144059b5317b3bf21"},{"name":"outputs.tf","path":"examples/cloudwatch-dashboard/outputs.tf","sha":"44bdb681166336894d50e51dc64cfead255cff4f"},{"name":"variables.tf","path":"examples/cloudwatch-dashboard/variables.tf","sha":"d2fb5fd788e607085e024180bd2a68bf0678d58d"}]},{"name":"cloudwatch-logs-metric-filters","children":[{"name":"README.md","path":"examples/cloudwatch-logs-metric-filters/README.md","sha":"ec357e4bb56ceafcd336fd0d78c0543337701f97"},{"name":"main.tf","path":"examples/cloudwatch-logs-metric-filters/main.tf","sha":"fe56f58ce936823d91b1135da2b1897550b5755f"},{"name":"outputs.tf","path":"examples/cloudwatch-logs-metric-filters/outputs.tf","sha":"28d515dc5364afbc215ccdffbb03e3f3cd66a0ba"},{"name":"variables.tf","path":"examples/cloudwatch-logs-metric-filters/variables.tf","sha":"7fc7831e61510621a36bc50ff576fad550df8722"}]},{"name":"cloudwatch-logs-to-slack","children":[{"name":"README.md","path":"examples/cloudwatch-logs-to-slack/README.md","sha":"cef1b6979208b83c9474813c124a95d9b309931f"},{"name":"main.tf","path":"examples/cloudwatch-logs-to-slack/main.tf","sha":"54fe812be6345eac0411de4114f99739231d5067"},{"name":"variables.tf","path":"examples/cloudwatch-logs-to-slack/variables.tf","sha":"8299bbb782ed8ed06d6a016df4b8d173989944a0"}]},{"name":"cloudwatch-to-slack","children":[{"name":"README.md","path":"examples/cloudwatch-to-slack/README.md","sha":"4e806611c7e42b382147bad2a82e690351edf9b9"},{"name":"main.tf","path":"examples/cloudwatch-to-slack/main.tf","sha":"c850cf9723890f09c2856c995fa2f24f150ab6ea"},{"name":"outputs.tf","path":"examples/cloudwatch-to-slack/outputs.tf","sha":"974908882a0473bb4e3ea7c7659c8ae7314d5de3"},{"name":"variables.tf","path":"examples/cloudwatch-to-slack/variables.tf","sha":"ae99c8f18bde992c0cedda836f03a4a0607a55c4"}]},{"name":"ec2-alarms","children":[{"name":"README.md","path":"examples/ec2-alarms/README.md","sha":"6fccf85d741b897f9de06bcd6bc3776c2da2e0e1"},{"name":"main.tf","path":"examples/ec2-alarms/main.tf","sha":"a92810f360f633d2c2193ea143139b0bc7a1d5cb"},{"name":"outputs.tf","path":"examples/ec2-alarms/outputs.tf","sha":"db64d3c79fc4c66c49f0a86fb1bac85eacc9418f"},{"name":"variables.tf","path":"examples/ec2-alarms/variables.tf","sha":"5d5c5907ba090ffaefd2707e343c633f9cb0db90"}]},{"name":"ecs-alarms","children":[{"name":"README.md","path":"examples/ecs-alarms/README.md","sha":"acf73eecd32e239c5c4b1979ed51fd8c2bba2235"},{"name":"main.tf","path":"examples/ecs-alarms/main.tf","sha":"783aa2f296bf43f60feaeb3d6c5b4b05bf15f541"},{"name":"outputs.tf","path":"examples/ecs-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"user-data","children":[{"name":"user-data.sh","path":"examples/ecs-alarms/user-data/user-data.sh","sha":"af6a43c618ff5f89ae997b9906a18db2bc5611ab"}]},{"name":"variables.tf","path":"examples/ecs-alarms/variables.tf","sha":"59ef88f78fe01f8652d097abb7d7b6b7ddb3ecff"}]},{"name":"elasticache-alarms","children":[{"name":"README.md","path":"examples/elasticache-alarms/README.md","sha":"51d8bd9847f3ea95851ab911d140d67391532578"},{"name":"main.tf","path":"examples/elasticache-alarms/main.tf","sha":"75b8c5a03bada7998471c6c2464998757570e295"},{"name":"outputs.tf","path":"examples/elasticache-alarms/outputs.tf","sha":"e6095a5c0089e1236e7507fbe8a59faf44c5c219"},{"name":"variables.tf","path":"examples/elasticache-alarms/variables.tf","sha":"bfa00fd8c445df907a3b49b8ac3735ac549039d0"}]},{"name":"elasticsearch-alarms","children":[{"name":"README.md","path":"examples/elasticsearch-alarms/README.md","sha":"9c493035998825f55937b4afa92c746662aeb03a"},{"name":"main.tf","path":"examples/elasticsearch-alarms/main.tf","sha":"b6bc582a7d78a4728a21416f4d281181ff7884d5"},{"name":"outputs.tf","path":"examples/elasticsearch-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/elasticsearch-alarms/variables.tf","sha":"7e021ff0df92bfb433e9b6ea0d13e2b66f965de5"}]},{"name":"elb-alarms","children":[{"name":"README.md","path":"examples/elb-alarms/README.md","sha":"b5e0a2c6a4868bbbee510d2c5a85da984fc48d3f"},{"name":"main.tf","path":"examples/elb-alarms/main.tf","sha":"09c4f75022f471821ef63a1c73285fdb07d4bda6"},{"name":"outputs.tf","path":"examples/elb-alarms/outputs.tf","sha":"b98ff4cfcc70054d0f87a65883fa17e305c8189c"},{"name":"variables.tf","path":"examples/elb-alarms/variables.tf","sha":"bd33dc9c7bb27fac2eebd0b0042e7434137c798d"}]},{"name":"lambda-alarms","children":[{"name":"README.md","path":"examples/lambda-alarms/README.md","sha":"23196e276e2ecaf8dd7489d310795173abbc15b6"},{"name":"main.tf","path":"examples/lambda-alarms/main.tf","sha":"84053fd9445765dbdb1840662b970f2ad9529d11"},{"name":"outputs.tf","path":"examples/lambda-alarms/outputs.tf","sha":"e4f232637f1955a8099f7ae6f2b5bd4b6c13c14e"},{"name":"python","children":[{"name":"Dockerfile","path":"examples/lambda-alarms/python/Dockerfile","sha":"e01798399fc9c72f54f05fd68f181bd1c0cf0f33"},{"name":"build.sh","path":"examples/lambda-alarms/python/build.sh","sha":"bf53f2bdde463e8bd2f1a4f93009ecb1c6c0c206"},{"name":"requirements.txt","path":"examples/lambda-alarms/python/requirements.txt","sha":"9d84d3588526c729a27bc7f6d5bfdccee0bb9de8"},{"name":"src","children":[{"name":"__init.py__","path":"examples/lambda-alarms/python/src/__init.py__","sha":"1b58820b01935d58928ad905427bd838c5e80123"},{"name":"index.py","path":"examples/lambda-alarms/python/src/index.py","sha":"d0233c21dc7572caead57e7e60c8d75a13312ea0"},{"name":"test_harness.py","path":"examples/lambda-alarms/python/src/test_harness.py","sha":"73edf34edf789e6f57b0d8288cedb22ec9d37bc3"}]}]},{"name":"variables.tf","path":"examples/lambda-alarms/variables.tf","sha":"39aa228faafdbc00a4ffa7e799979d97f17d0ddc"}]},{"name":"load-balancer-access-logs","children":[{"name":"alb","children":[{"name":"README.md","path":"examples/load-balancer-access-logs/alb/README.md","sha":"2c0f6aad2545f7517229a1a99e6497d0f20c96bf"},{"name":"main.tf","path":"examples/load-balancer-access-logs/alb/main.tf","sha":"7a3648fb05693771e9a20060555558e6a5331d16"},{"name":"outputs.tf","path":"examples/load-balancer-access-logs/alb/outputs.tf","sha":"3d68d5999618b1ce3a7913397ac9aca618205322"},{"name":"variables.tf","path":"examples/load-balancer-access-logs/alb/variables.tf","sha":"15760ff76bcec102533ac1436614d75e57c2bac5"}]},{"name":"elb","children":[{"name":"README.md","path":"examples/load-balancer-access-logs/elb/README.md","sha":"b15a7d6937ef9e20f25b047ec2b9a5629d0d4322"},{"name":"main.tf","path":"examples/load-balancer-access-logs/elb/main.tf","sha":"350fda75727dbe1377724605f9f09e4b3d317f28"},{"name":"outputs.tf","path":"examples/load-balancer-access-logs/elb/outputs.tf","sha":"aac64206ee3f7b0067f35112081d62566ce9522d"},{"name":"variables.tf","path":"examples/load-balancer-access-logs/elb/variables.tf","sha":"15760ff76bcec102533ac1436614d75e57c2bac5"}]},{"name":"nlb","children":[{"name":"README.md","path":"examples/load-balancer-access-logs/nlb/README.md","sha":"932adf02397b8855ed0243a0220e992562c960f8"},{"name":"main.tf","path":"examples/load-balancer-access-logs/nlb/main.tf","sha":"4bdac6ed60cf9cdb8507aee48ca841c98ee66f6c"},{"name":"outputs.tf","path":"examples/load-balancer-access-logs/nlb/outputs.tf","sha":"f2b50bd9ccf6afdca03c2f691ef44f6a75dc0722"},{"name":"variables.tf","path":"examples/load-balancer-access-logs/nlb/variables.tf","sha":"15760ff76bcec102533ac1436614d75e57c2bac5"}]}]},{"name":"rds-alarms","children":[{"name":"README.md","path":"examples/rds-alarms/README.md","sha":"3c0398694c0209629e0f536fbe75d29cc2b67569"},{"name":"main.tf","path":"examples/rds-alarms/main.tf","sha":"4e26f500e7bd27ab2c01190df88b0b626fd50c19"},{"name":"outputs.tf","path":"examples/rds-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/rds-alarms/variables.tf","sha":"4cae919361eadf1554ba818c6080316d2290d120"}]},{"name":"route53-health-check-alarms","children":[{"name":"README.md","path":"examples/route53-health-check-alarms/README.md","sha":"dd915bcca7542e7bfb8662de8629a7510112e110"},{"name":"main.tf","path":"examples/route53-health-check-alarms/main.tf","sha":"122cad10ae182bb35f73b6e1be755178fb19e6e2"},{"name":"outputs.tf","path":"examples/route53-health-check-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/route53-health-check-alarms/variables.tf","sha":"c8de0aca1b1773e29e5177d7acd0dc97fc1c29c7"}]},{"name":"scheduled-job-alarms","children":[{"name":"README.md","path":"examples/scheduled-job-alarms/README.md","sha":"f4ac16ea2b53201bffedfb903f25f24d524958e9"},{"name":"main.tf","path":"examples/scheduled-job-alarms/main.tf","sha":"277f9c35005e54d019758b633af8cf69b27bc435"},{"name":"outputs.tf","path":"examples/scheduled-job-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/scheduled-job-alarms/variables.tf","sha":"1d06c7678f23c5cf624b172f96d4d0bc6277e85f"}]},{"name":"sqs-alarms","children":[{"name":"README.md","path":"examples/sqs-alarms/README.md","sha":"92b201f5ce892bd0bd24bace8ac35f7729a26a1a"},{"name":"main.tf","path":"examples/sqs-alarms/main.tf","sha":"6919de9a83935c0d17a6fbf8768bfd0dfb2bf51a"},{"name":"outputs.tf","path":"examples/sqs-alarms/outputs.tf","sha":"8259844bf891d7dd7a2745df89804b356df84a59"},{"name":"variables.tf","path":"examples/sqs-alarms/variables.tf","sha":"32a3fece3af25aed02386cfc74e073b1704389a1"}]},{"name":"syslog","children":[{"name":"README.md","path":"examples/syslog/README.md","sha":"5fa2747b5fade6ab04d6438bb8e5105a75101a8e"},{"name":"syslog-example.json","path":"examples/syslog/syslog-example.json","sha":"28ffc18ae98c34b604de7891080438e3ae440514"}]}]},{"name":"modules","children":[{"name":"agents","children":[{"name":"cloudwatch-agent","children":[{"name":"README.adoc","path":"modules/agents/cloudwatch-agent/README.adoc","sha":"b0dfffccc159dd84f76116f44f9158888573abfa"},{"name":"core-concepts.md","path":"modules/agents/cloudwatch-agent/core-concepts.md","sha":"526a628a81bddcc345fbe87c47551e18e0fab60a"},{"name":"install-scripts","children":[{"name":"config.json","path":"modules/agents/cloudwatch-agent/install-scripts/config.json","sha":"ae58c3821cbae98a23b37d28afe698d18385b796"},{"name":"install-cloudwatch-agent.sh","path":"modules/agents/cloudwatch-agent/install-scripts/install-cloudwatch-agent.sh","sha":"529bb9e6effa0217f327e1a813c88ca7fb8e20a1"}]},{"name":"install.sh","path":"modules/agents/cloudwatch-agent/install.sh","sha":"36b4b752f1ffa8b6f856c74835faf9ca262167ca"},{"name":"user-data-scripts","children":[{"name":"configure-cloudwatch-agent.sh","path":"modules/agents/cloudwatch-agent/user-data-scripts/configure-cloudwatch-agent.sh","sha":"684b164c10fbc66e0701f24f7131c0d69384caa0"},{"name":"restart-cloudwatch-agent.sh","path":"modules/agents/cloudwatch-agent/user-data-scripts/restart-cloudwatch-agent.sh","sha":"60cdb0fb221adc4dee57236daf9fe9461b4304ef"}]}]}]},{"name":"alarms","children":[{"name":"README.md","path":"modules/alarms/README.md","sha":"6469aa38d6deea5fd9c41b46efe3fc7934c47c86"},{"name":"alb-alarms","children":[{"name":"README.md","path":"modules/alarms/alb-alarms/README.md","sha":"a114be66833c30adf5486ce1f8a9a2af5c301006"},{"name":"main.tf","path":"modules/alarms/alb-alarms/main.tf","sha":"79905fa1d638a1429eeff8855c613dbf75d44438"},{"name":"variables.tf","path":"modules/alarms/alb-alarms/variables.tf","sha":"b0d0fae21e9f2d344d4bdb46e4106b03d577b686"}]},{"name":"alb-target-group-alarms","children":[{"name":"README.md","path":"modules/alarms/alb-target-group-alarms/README.md","sha":"9f74b6be1ce9d7d9d00dafd80f26047f6d517963"},{"name":"main.tf","path":"modules/alarms/alb-target-group-alarms/main.tf","sha":"0e72cee12cc0ae5cb4640b6bda01ea791e63bca4"},{"name":"variables.tf","path":"modules/alarms/alb-target-group-alarms/variables.tf","sha":"d5fa424e50b4aa543fc9351a6be0cf7659ba7a9b"}]},{"name":"asg-cpu-alarms","children":[{"name":"README.md","path":"modules/alarms/asg-cpu-alarms/README.md","sha":"5d8930a69b56e7e68de60460bc9ac086d78c3fdb"},{"name":"main.tf","path":"modules/alarms/asg-cpu-alarms/main.tf","sha":"d1a1ea47ab2bbbe545d37dec225317a8690a5940"},{"name":"variables.tf","path":"modules/alarms/asg-cpu-alarms/variables.tf","sha":"ed01e8b9ec506a567f237a39f57c8d9e9a302f0c"}]},{"name":"asg-disk-alarms","children":[{"name":"README.MD","path":"modules/alarms/asg-disk-alarms/README.MD","sha":"a70e4bb2774d2f34ab304c594bbf5af1274f42fd"},{"name":"main.tf","path":"modules/alarms/asg-disk-alarms/main.tf","sha":"383751e78c06ba27fd3aea0cd17ce8949a3e0947"},{"name":"variables.tf","path":"modules/alarms/asg-disk-alarms/variables.tf","sha":"b0131894cb79008273cd6aabbcf8aeeb41caf89d"}]},{"name":"asg-memory-alarms","children":[{"name":"README.md","path":"modules/alarms/asg-memory-alarms/README.md","sha":"5cee9559d7c409187099138db7480322b18aef1a"},{"name":"main.tf","path":"modules/alarms/asg-memory-alarms/main.tf","sha":"1665340346f2460067059b798e2853a75bca1766"},{"name":"variables.tf","path":"modules/alarms/asg-memory-alarms/variables.tf","sha":"9fee782e79e6d0f47021704f0fddd063659d1c55"}]},{"name":"ec2-cpu-alarms","children":[{"name":"README.md","path":"modules/alarms/ec2-cpu-alarms/README.md","sha":"f5a086f005bf67ac936a00cbabc892c91c06b4b8"},{"name":"main.tf","path":"modules/alarms/ec2-cpu-alarms/main.tf","sha":"9e7f2a07dc211dc5169ae2aaed35836091f8b13b"},{"name":"variables.tf","path":"modules/alarms/ec2-cpu-alarms/variables.tf","sha":"45bca003cb49a8e3db0985df228fa7f1beff63e4"}]},{"name":"ec2-disk-alarms","children":[{"name":"README.MD","path":"modules/alarms/ec2-disk-alarms/README.MD","sha":"d06565ca47c749fe7033994d1fcd5779be0930c8"},{"name":"main.tf","path":"modules/alarms/ec2-disk-alarms/main.tf","sha":"b516bf9714ab159095a73fda55f5902445472bcc"},{"name":"variables.tf","path":"modules/alarms/ec2-disk-alarms/variables.tf","sha":"ba7fee2a024e6b906bae73c18a1a6e722ff3479c"}]},{"name":"ec2-memory-alarms","children":[{"name":"README.md","path":"modules/alarms/ec2-memory-alarms/README.md","sha":"7b33625f7536545b2b71d978df3ecaa3b17d358c"},{"name":"main.tf","path":"modules/alarms/ec2-memory-alarms/main.tf","sha":"9370b84d065f9076adac6bbf42ff83bba9ab21e6"},{"name":"variables.tf","path":"modules/alarms/ec2-memory-alarms/variables.tf","sha":"72ed2f7756bc2e6bdc25bb22e9af5bb0860f8476"}]},{"name":"ecs-cluster-alarms","children":[{"name":"README.md","path":"modules/alarms/ecs-cluster-alarms/README.md","sha":"4bbc7f714a6ac55589d649eda6883e3002bc3746"},{"name":"main.tf","path":"modules/alarms/ecs-cluster-alarms/main.tf","sha":"cb88e45bb53d8285d139f6052c4bf2311213280b"},{"name":"variables.tf","path":"modules/alarms/ecs-cluster-alarms/variables.tf","sha":"e2e8a5a85352ea226453d10611a78b68d1b1dd51"}]},{"name":"ecs-service-alarms","children":[{"name":"README.md","path":"modules/alarms/ecs-service-alarms/README.md","sha":"d54663b23f2deb5ff48fe4493eab3b6b98685bfb"},{"name":"main.tf","path":"modules/alarms/ecs-service-alarms/main.tf","sha":"2345c8ee177e447c99dfdb17b11eb6248328a813"},{"name":"variables.tf","path":"modules/alarms/ecs-service-alarms/variables.tf","sha":"a9e1faeadd8d92c26eb031e9a5e94f927b32224e"}]},{"name":"ecs-service-with-alb-alarms","children":[{"name":"README.md","path":"modules/alarms/ecs-service-with-alb-alarms/README.md","sha":"1d2afa7f20a194083108491c8342ab1f22038174"}]},{"name":"elasticache-memcached-alarms","children":[{"name":"README.md","path":"modules/alarms/elasticache-memcached-alarms/README.md","sha":"bd5fd399c37e09a450dcb8bf878f3b57eb6ea09e"},{"name":"main.tf","path":"modules/alarms/elasticache-memcached-alarms/main.tf","sha":"6ca97f6e35fa0dddf10b8a893417dab4de61e9ee"},{"name":"variables.tf","path":"modules/alarms/elasticache-memcached-alarms/variables.tf","sha":"05f9de3ff77b363de3524f2cbed2c783361718ed"}]},{"name":"elasticache-redis-alarms","children":[{"name":"README.md","path":"modules/alarms/elasticache-redis-alarms/README.md","sha":"becd381d6b4441e61cacbdd0a55c32b3caec2c02"},{"name":"main.tf","path":"modules/alarms/elasticache-redis-alarms/main.tf","sha":"acea983c00388476862356ee34fcae0b73e9a680"},{"name":"variables.tf","path":"modules/alarms/elasticache-redis-alarms/variables.tf","sha":"279190d68db6c81b0decc830159a78f3089f2782"}]},{"name":"elasticsearch-alarms","children":[{"name":"README.md","path":"modules/alarms/elasticsearch-alarms/README.md","sha":"0cdc80ff90c0bf44ae5d2feaed06f35fa71a49f4"},{"name":"main.tf","path":"modules/alarms/elasticsearch-alarms/main.tf","sha":"00023238d68885854ef777c0fa8a129510f36541"},{"name":"variables.tf","path":"modules/alarms/elasticsearch-alarms/variables.tf","sha":"1a0906cf3c8e0d6f2900a2bce40b1e38244bfcae"}]},{"name":"elb-alarms","children":[{"name":"README.md","path":"modules/alarms/elb-alarms/README.md","sha":"71a5fed07bfae58b6ac4f8e61699ad774a040987"},{"name":"main.tf","path":"modules/alarms/elb-alarms/main.tf","sha":"394f90177ef6cfa23ef1d69cd5df9555a968aaf1"},{"name":"variables.tf","path":"modules/alarms/elb-alarms/variables.tf","sha":"88da91056f86feaff2ff4f0ffd1afa7377884ee9"}]},{"name":"lambda-alarms","children":[{"name":"README.md","path":"modules/alarms/lambda-alarms/README.md","sha":"df42d0dbd3daf18ee1a6075628dc28a255fb095a"},{"name":"main.tf","path":"modules/alarms/lambda-alarms/main.tf","sha":"99da4c28dbea6d02ca74028e06b1fd50bdd10b56"},{"name":"outputs.tf","path":"modules/alarms/lambda-alarms/outputs.tf","sha":"8fc87125e9b1bde80d2e002df29773084b5ce5a0"},{"name":"variables.tf","path":"modules/alarms/lambda-alarms/variables.tf","sha":"af90444af969cb91f656a856889837e5f2e5de3b"}]},{"name":"rds-alarms","children":[{"name":"README.md","path":"modules/alarms/rds-alarms/README.md","sha":"b9e3381e5ec91ab1bed5329b779ca1e3898fabce"},{"name":"main.tf","path":"modules/alarms/rds-alarms/main.tf","sha":"f3d727211838943f98aa4dcb533ad134d7ed1055"},{"name":"variables.tf","path":"modules/alarms/rds-alarms/variables.tf","sha":"4cc595c845ea9b203c7483fcfcebf8ca88c073b0"}]},{"name":"route53-health-check-alarms","children":[{"name":"README.md","path":"modules/alarms/route53-health-check-alarms/README.md","sha":"2268b9b10edb85e52252d50e76f6181d43c97128"},{"name":"main.tf","path":"modules/alarms/route53-health-check-alarms/main.tf","sha":"a25b3891fa349aea80ff13281b42ee5dab4e9129"},{"name":"variables.tf","path":"modules/alarms/route53-health-check-alarms/variables.tf","sha":"1e736dfafc6091e1a3639c8fbc1f7a0f36ae21cc"}]},{"name":"scheduled-job-alarm","children":[{"name":"README.md","path":"modules/alarms/scheduled-job-alarm/README.md","sha":"50fcff7ab810d192f41063b747d76e132eee8713"},{"name":"main.tf","path":"modules/alarms/scheduled-job-alarm/main.tf","sha":"139a3080d7b356d1879951f340338f0c7cb5314d"},{"name":"variables.tf","path":"modules/alarms/scheduled-job-alarm/variables.tf","sha":"f6003166d086554edcc6aca2f8c38aabeca281b4"}]},{"name":"sns-to-slack","children":[{"name":"README.md","path":"modules/alarms/sns-to-slack/README.md","sha":"10c3a965474a2f2ee48dbc781903c1660db1cfa4"},{"name":"lambda","children":[{"name":"alerts.py","path":"modules/alarms/sns-to-slack/lambda/alerts.py","sha":"877fe277879969752f8354b94dd3fb7407cd138c"},{"name":"test-data","children":[{"name":"ec2-high-cpu-utilization-alert.json","path":"modules/alarms/sns-to-slack/lambda/test-data/ec2-high-cpu-utilization-alert.json","sha":"4efc79f1f6d77f0f715b86c0b86e9d95fd89d4a8"},{"name":"ec2-high-cpu-utilization-ok.json","path":"modules/alarms/sns-to-slack/lambda/test-data/ec2-high-cpu-utilization-ok.json","sha":"007ed86f4f4e2f23c5bac8b121de044ddb9b1753"}]},{"name":"test.py","path":"modules/alarms/sns-to-slack/lambda/test.py","sha":"8f6ace7f368a6b81fbcd5d5588363f39c2673ab8"}]},{"name":"main.tf","path":"modules/alarms/sns-to-slack/main.tf","sha":"3dfcc504e170650647acd5912b85c519a378c481"},{"name":"variables.tf","path":"modules/alarms/sns-to-slack/variables.tf","sha":"c7588dfab534e2acd24f178502b0af47160f7692"}]},{"name":"sqs-alarms","children":[{"name":"README.md","path":"modules/alarms/sqs-alarms/README.md","sha":"076c1e0546accdd50fd0f7a07435b84cfb0c21da"},{"name":"main.tf","path":"modules/alarms/sqs-alarms/main.tf","sha":"d2bae0b32a288d10ada232dc8b465fdf1e4d4c9a"},{"name":"variables.tf","path":"modules/alarms/sqs-alarms/variables.tf","sha":"c211f543ad5bdaf442d9152620a0136a6a090d56"}]}]},{"name":"logs","children":[{"name":"README.md","path":"modules/logs/README.md","sha":"5a4e697af404e0a51645d68b1a872c60834e9f99"},{"name":"_deprecated","children":[{"name":"cloudwatch-log-aggregation-scripts","children":[{"name":"README.md","path":"modules/logs/_deprecated/cloudwatch-log-aggregation-scripts/README.md","sha":"41fce9dfddc6537ad2e950e3e05675aeb2352798"}]},{"name":"elb-access-logs","children":[{"name":"README.md","path":"modules/logs/_deprecated/elb-access-logs/README.md","sha":"3cb659a6a9a53f33a1ce0c59aa99d1cbcdb4e8df"}]}]},{"name":"cloudwatch-log-aggregation-iam-policy","children":[{"name":"README.md","path":"modules/logs/cloudwatch-log-aggregation-iam-policy/README.md","sha":"7c9b7c45e2590d25f2f56cc23222a3ba0db7ab67"},{"name":"main.tf","path":"modules/logs/cloudwatch-log-aggregation-iam-policy/main.tf","sha":"b54e6e0de2e39a0d4ca55331200fc0b0832dc6fd"},{"name":"outputs.tf","path":"modules/logs/cloudwatch-log-aggregation-iam-policy/outputs.tf","sha":"bd206e7139b681664671a31b09bf30533bc9ad48"},{"name":"variables.tf","path":"modules/logs/cloudwatch-log-aggregation-iam-policy/variables.tf","sha":"250152e6bfeb02a16bed4151ffc7156636db1bd9"}]},{"name":"cloudwatch-logs-metric-filters","children":[{"name":"README.md","path":"modules/logs/cloudwatch-logs-metric-filters/README.md","sha":"d8281b100291617ce01ed98eb313ba851a15b14d"},{"name":"main.tf","path":"modules/logs/cloudwatch-logs-metric-filters/main.tf","sha":"f87d85146d2fe45b04efddc8071cd68de27f311a"},{"name":"outputs.tf","path":"modules/logs/cloudwatch-logs-metric-filters/outputs.tf","sha":"dec3f496d05244a3728103e172be6a90476577c4"},{"name":"variables.tf","path":"modules/logs/cloudwatch-logs-metric-filters/variables.tf","sha":"8542eb138f8522cc819247140f651fd9c4d9266e"}]},{"name":"load-balancer-access-logs","children":[{"name":"README.md","path":"modules/logs/load-balancer-access-logs/README.md","sha":"6556919790743845bd789f6e49c679949b0f8981"},{"name":"_docs","children":[{"name":"Upgrade Guide.md","path":"modules/logs/load-balancer-access-logs/_docs/Upgrade Guide.md","sha":"c073730734b5e6359d6c9e547af6a4dc606f5575"}]},{"name":"main.tf","path":"modules/logs/load-balancer-access-logs/main.tf","sha":"9f9ec5a350a3522c8eec2467b10e312650bf43e0"},{"name":"outputs.tf","path":"modules/logs/load-balancer-access-logs/outputs.tf","sha":"5bd1a74b58776a97a84fda11c40e8ff917d47f04"},{"name":"variables.tf","path":"modules/logs/load-balancer-access-logs/variables.tf","sha":"cfe6df3f09b089b4ec5013d807cb76e48f2e9deb"}]},{"name":"log-filter-to-slack","children":[{"name":"README.md","path":"modules/logs/log-filter-to-slack/README.md","sha":"2ec38db9a5070055e21f25df8df8cbc0352540e6"},{"name":"lambda","children":[{"name":"handler.py","path":"modules/logs/log-filter-to-slack/lambda/handler.py","sha":"9e153b54abc181121fe3cbbca91079e801aef9f4"}]},{"name":"main.tf","path":"modules/logs/log-filter-to-slack/main.tf","sha":"b219464d947f8427a117d7e1bdd14446cd7aad71"},{"name":"variables.tf","path":"modules/logs/log-filter-to-slack/variables.tf","sha":"e9542cff2fe8ca71a8851699909a329ac1dc2804"}]},{"name":"syslog","children":[{"name":"README.md","path":"modules/logs/syslog/README.md","sha":"e206cf910a893ea255dbbe76796f1ad872421608"},{"name":"install-scripts","children":[{"name":"configure-syslog","path":"modules/logs/syslog/install-scripts/configure-syslog","sha":"6a859413008473e8b2e302a9cd025a4279016420"},{"name":"logrotate-config-amazon-linux","path":"modules/logs/syslog/install-scripts/logrotate-config-amazon-linux","sha":"1c3fedb3f165c7fcc89ce951f2ec28805c7373dc"},{"name":"logrotate-config-redhat","path":"modules/logs/syslog/install-scripts/logrotate-config-redhat","sha":"6aaf5e4f496d3742afccb9366ae5a0788d8716d3"},{"name":"logrotate-config-ubuntu","path":"modules/logs/syslog/install-scripts/logrotate-config-ubuntu","sha":"ea4603d761a8566a682bd194b8b0701198b34d59"}]},{"name":"install.sh","path":"modules/logs/syslog/install.sh","sha":"5995cf33d1b93a1d3397758f2de383386b9de94e"}]}]},{"name":"metrics","children":[{"name":"README.md","path":"modules/metrics/README.md","sha":"b1ac52c86288a6876aaa4fe7a971dd9bf7fb17ff"},{"name":"_deprecated","children":[{"name":"cloudwatch-memory-disk-metrics-scripts","children":[{"name":"README.md","path":"modules/metrics/_deprecated/cloudwatch-memory-disk-metrics-scripts/README.md","sha":"07bbc782adef777491067ce1e083e4bebf87897f"}]}]},{"name":"cloudwatch-custom-metrics-iam-policy","children":[{"name":"README.md","path":"modules/metrics/cloudwatch-custom-metrics-iam-policy/README.md","sha":"604c4e6ffcd1fb1486680112eb0ff28c061f4baa"},{"name":"main.tf","path":"modules/metrics/cloudwatch-custom-metrics-iam-policy/main.tf","sha":"84f0f31e3dfebbb62b4a493d1e12da252ea19c41"},{"name":"outputs.tf","path":"modules/metrics/cloudwatch-custom-metrics-iam-policy/outputs.tf","sha":"a4333e31573fa21ec9b638794ab0e83b8b5adcff"},{"name":"variables.tf","path":"modules/metrics/cloudwatch-custom-metrics-iam-policy/variables.tf","sha":"187d43c4156f9e630ce0ff4d5111ea1e9f934a9f"}]},{"name":"cloudwatch-dashboard-metric-widget","children":[{"name":"README.md","path":"modules/metrics/cloudwatch-dashboard-metric-widget/README.md","sha":"1e74fa76f69a158a8e001e3c1d1f92903cf2946d"},{"name":"main.tf","path":"modules/metrics/cloudwatch-dashboard-metric-widget/main.tf","sha":"51c5fca30878770b76d81944d82391d1822a52d5"},{"name":"outputs.tf","path":"modules/metrics/cloudwatch-dashboard-metric-widget/outputs.tf","sha":"b051fe38ab1908024978d27db681c88a5cac53ed"},{"name":"variables.tf","path":"modules/metrics/cloudwatch-dashboard-metric-widget/variables.tf","sha":"89519c38ffad943ba4926a150f1983dae74a6747"}]},{"name":"cloudwatch-dashboard-text-widget","children":[{"name":"README.md","path":"modules/metrics/cloudwatch-dashboard-text-widget/README.md","sha":"cd180e72c4ac373898ff2c74d8e56744baa71367"},{"name":"main.tf","path":"modules/metrics/cloudwatch-dashboard-text-widget/main.tf","sha":"4970ddb41bca8fca3a55a26f26b434f1d44559eb"},{"name":"outputs.tf","path":"modules/metrics/cloudwatch-dashboard-text-widget/outputs.tf","sha":"b051fe38ab1908024978d27db681c88a5cac53ed"},{"name":"variables.tf","path":"modules/metrics/cloudwatch-dashboard-text-widget/variables.tf","sha":"610e30a2d694634e7f4f343120e3fc0924ab1973"}]},{"name":"cloudwatch-dashboard","children":[{"name":"README.md","path":"modules/metrics/cloudwatch-dashboard/README.md","sha":"e3cde88d2636c386213f4fd0a19c9cd0e3b7b259"},{"name":"main.tf","path":"modules/metrics/cloudwatch-dashboard/main.tf","sha":"941129fa9412425c88b7ede1d1f3c0a2263bebd4"},{"name":"outputs.tf","path":"modules/metrics/cloudwatch-dashboard/outputs.tf","sha":"d99f4b61c9c195a40e12fc541a047d1b5ee3162d"},{"name":"variables.tf","path":"modules/metrics/cloudwatch-dashboard/variables.tf","sha":"fca792d317ef3a17c940106d8945fb2836fd76e9"}]}]}]},{"name":"setup.cfg","path":"setup.cfg","sha":"a15b7cbd1d9f0ef05f58f4943354ee1a4bb6fe48"},{"name":"terraform-cloud-enterprise-private-module-registry-placeholder.tf","path":"terraform-cloud-enterprise-private-module-registry-placeholder.tf","sha":"ae586c0fe830819580e1009d41a9074f16e65bed"},{"name":"test","children":[{"name":"README.md","path":"test/README.md","sha":"85acfc2e553ce6132695e6f5d85b5503142a640e","toggled":true},{"name":"alb_alarms_test.go","path":"test/alb_alarms_test.go","sha":"6b689fa00939234e519e98c2cfb809b682174ea3"},{"name":"asg_alarms_test.go","path":"test/asg_alarms_test.go","sha":"6a3a9d88f1ccf79884c78deb7ab5e8c22f41c6ec"},{"name":"cloudwatch_agent_test.go","path":"test/cloudwatch_agent_test.go","sha":"8453261dcde1dd26ac2f39d760e9a81e9b6ad5e2"},{"name":"cloudwatch_dashboard_test.go","path":"test/cloudwatch_dashboard_test.go","sha":"1e3a5a7c5d7b21644fa367ca4756fdab56286b9a"},{"name":"cloudwatch_logs_metric_filters_test.go","path":"test/cloudwatch_logs_metric_filters_test.go","sha":"798006c0f02a28e74de96f1bfafc110b242a7e53"},{"name":"cloudwatch_to_slack_test.go","path":"test/cloudwatch_to_slack_test.go","sha":"be6d8355b858e0e8c131c813dc491c57ee7f39fd"},{"name":"ec2_alarms_test.go","path":"test/ec2_alarms_test.go","sha":"661ca6652bf89a50c2388c4679cde66b66d12917"},{"name":"ecs_alarms_test.go","path":"test/ecs_alarms_test.go","sha":"2aed2d86021f29e9569f88b200640802ed99349f"},{"name":"elasticache_alarms_test.go","path":"test/elasticache_alarms_test.go","sha":"518d4bd81578e8856f4144d873fb80511bcedb58"},{"name":"elasticsearch_alarms_test.go","path":"test/elasticsearch_alarms_test.go","sha":"100ceb71c8fce494545c8316f027c34c03c7cbf8"},{"name":"elb_alarms_test.go","path":"test/elb_alarms_test.go","sha":"44e98f73e1f7dd7c32ead7ae7ec3398e6e8c8dbb"},{"name":"go.mod","path":"test/go.mod","sha":"5e6799e054402ba0a6e9ce023122a7f5247e5f2b"},{"name":"go.sum","path":"test/go.sum","sha":"15896559ee1b22470cc930947f34c23d9f9967e6"},{"name":"lambda_alarms_test.go","path":"test/lambda_alarms_test.go","sha":"83d02ac9547b2b76924b618346cc07fa551aecea"},{"name":"lb_access_logs_test.go","path":"test/lb_access_logs_test.go","sha":"10f4c519c681b024b83c4a329ba618fd64eab34c"},{"name":"rds_alarms_test.go","path":"test/rds_alarms_test.go","sha":"7618bdb06a6db4eacfa57d2aa0bb371655cfef94"},{"name":"route53_health_check_alarms_test.go","path":"test/route53_health_check_alarms_test.go","sha":"4686d0e7e1c304f0bb9485a67d311d2af474881a"},{"name":"scheduled_job_alarms_test.go","path":"test/scheduled_job_alarms_test.go","sha":"9609b20f55b6d1ae62c071daec0452e08f93b8c1"},{"name":"sqs_alarms_test.go","path":"test/sqs_alarms_test.go","sha":"1ab67d372dca438cd5e4fc5816d89d297ba0013d"},{"name":"syslog_test.go","path":"test/syslog_test.go","sha":"926582f2feaaf3c5f0884b97be32081fb156be92"},{"name":"test_helpers.go","path":"test/test_helpers.go","sha":"ac9147ddf4f82930e1fdc7e9ec2ae237a5864298"},{"name":"upgrades","children":[{"name":"constants.go","path":"test/upgrades/constants.go","sha":"bee1fa0d18a2982bc0eae59384a9d92142e03ad8"},{"name":"upgrade_module_ec2_alarms_test.go","path":"test/upgrades/upgrade_module_ec2_alarms_test.go","sha":"89b7a6509b8a32ec33be2bdd47b79f7bc8496f02"}]},{"name":"validation","children":[{"name":"validate_all_modules_and_examples_test.go","path":"test/validation/validate_all_modules_and_examples_test.go","sha":"74c928d0cbc2914e5cd708277bd857cb2375b660"}]}],"toggled":true}]},"detailsContent":"<h1 class=\"preview__body--title\" id=\"tests\">Tests</h1><div class=\"preview__body--border\"></div><p>This folder contains the tests for the modules in this repo.</p>\n<h2 class=\"preview__body--subtitle\" id=\"running-the-tests-locally\">Running the tests locally</h2>\n<p><strong>Note #1</strong>: Many of these tests create real resources in an AWS account. That means they cost money to run, especially\nif you don't clean up after yourself. Please be considerate of the resources you create and take extra care to clean\neverything up when you're done!</p>\n<p><strong>Note #2</strong>: Never hit <code>CTRL + C</code> or cancel a build once tests are running or the cleanup tasks won't run!</p>\n<p><strong>Note #3</strong>: We set <code>-timeout 45m</code> on all tests not because they necessarily take 45 minutes, but because Go has a\ndefault test timeout of 10 minutes, after which it does a <code>SIGQUIT</code>, preventing the tests from properly cleaning up\nafter themselves. Therefore, we set a timeout of 45 minutes to make sure all tests have enough time to finish and\ncleanup. If you are using <code>aws-vault</code> to manage AWS credentials through iam roles, adjusting the session length with\nthe <code>--assume-role-ttl</code> flag might also be necessary.</p>\n<h4 id=\"prerequisites\">Prerequisites</h4>\n<ul>\n<li>Install the latest version of <a href=\"https://golang.org/\" class=\"preview__body--description--blue\" target=\"_blank\">Go</a>.</li>\n<li>Install <a href=\"https://www.terraform.io/downloads.html\" class=\"preview__body--description--blue\" target=\"_blank\">Terraform</a>.</li>\n<li>Add your AWS credentials as environment variables: <code>AWS_ACCESS_KEY_ID</code>, <code>AWS_SECRET_ACCESS_KEY</code></li>\n<li>For some of the tests, you also need to set the <code>GITHUB_OAUTH_TOKEN</code> environment variable to a valid GitHub\nauth token with "repo" access. You can generate one here: https://github.com/settings/tokens</li>\n</ul>\n<h4 id=\"run-all-the-tests\">Run all the tests</h4>\n<pre><span class=\"hljs-built_in\">cd</span> <span class=\"hljs-built_in\">test</span>\ngo <span class=\"hljs-built_in\">test</span> -v -timeout 45m -parallel 128\n</pre>\n<h4 id=\"run-a-specific-test\">Run a specific test</h4>\n<p>To run a specific test called <code>TestFoo</code>:</p>\n<pre><span class=\"hljs-keyword\">cd</span> <span class=\"hljs-keyword\">test</span>\ngo <span class=\"hljs-keyword\">test</span> -v -timeout 45m -parallel 128 -<span class=\"hljs-keyword\">run</span> TestFoo\n</pre>\n","repoName":"terraform-aws-monitoring","repoRef":"v0.35.6","serviceDescriptor":{"serviceName":"CloudWatch","serviceRepoName":"terraform-aws-monitoring","serviceRepoOrg":"gruntwork-io","cloudProviders":["aws"],"description":"Send all metrics to CloudWatch, including those not visible to the EC2 hypervisor. Create dashboards and alerts as code.","imageUrl":"cloudwatch.png","licenseType":"subscriber","technologies":["Terraform","Bash"],"compliance":[],"tags":[""]},"serviceCategoryName":"Monitoring & alerting","fileName":"README.md","filePath":"/test","title":"Repo Browser: CloudWatch","description":"Browse the repos in the Gruntwork Infrastructure as Code Library."}