{"id":13481731,"url":"https://github.com/terraform-linters/tflint-ruleset-aws","last_synced_at":"2025-04-05T03:09:29.078Z","repository":{"id":37751025,"uuid":"245765716","full_name":"terraform-linters/tflint-ruleset-aws","owner":"terraform-linters","description":"TFLint ruleset for terraform-provider-aws","archived":false,"fork":false,"pushed_at":"2024-04-08T19:40:02.000Z","size":6252,"stargazers_count":296,"open_issues_count":6,"forks_count":69,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-04-08T22:26:55.976Z","etag":null,"topics":["aws","terraform","tflint","tflint-ruleset"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/terraform-linters.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-03-08T06:42:53.000Z","updated_at":"2024-04-15T05:13:12.971Z","dependencies_parsed_at":"2024-02-11T09:22:33.414Z","dependency_job_id":"448f8e02-f08c-44ea-b4a0-12013d6543ea","html_url":"https://github.com/terraform-linters/tflint-ruleset-aws","commit_stats":null,"previous_names":[],"tags_count":53,"template":false,"template_full_name":"terraform-linters/tflint-ruleset-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraform-linters%2Ftflint-ruleset-aws","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraform-linters%2Ftflint-ruleset-aws/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraform-linters%2Ftflint-ruleset-aws/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraform-linters%2Ftflint-ruleset-aws/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terraform-linters","download_url":"https://codeload.github.com/terraform-linters/tflint-ruleset-aws/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280272,"owners_count":20912967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","terraform","tflint","tflint-ruleset"],"created_at":"2024-07-31T17:00:54.863Z","updated_at":"2025-04-05T03:09:29.060Z","avatar_url":"https://github.com/terraform-linters.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# TFLint Ruleset for terraform-provider-aws\n[![Build Status](https://github.com/terraform-linters/tflint-ruleset-aws/actions/workflows/build.yml/badge.svg?branch=master)](https://github.com/terraform-linters/tflint-ruleset-aws/actions)\n[![GitHub release](https://img.shields.io/github/release/terraform-linters/tflint-ruleset-aws.svg)](https://github.com/terraform-linters/tflint-ruleset-aws/releases/latest)\n[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-blue.svg)](LICENSE)\n\nTFLint ruleset plugin for Terraform AWS Provider\n\nThis ruleset focus on possible errors and best practices about AWS resources. Many rules are enabled by default and warn against code that might fail when running `terraform apply`, or clearly unrecommened.\n\n## Requirements\n\n- TFLint v0.42+\n- Go v1.24\n\n## Installation\n\nYou can install the plugin by adding a config to `.tflint.hcl` and running `tflint --init`:\n\n```hcl\nplugin \"aws\" {\n    enabled = true\n    version = \"0.38.0\"\n    source  = \"github.com/terraform-linters/tflint-ruleset-aws\"\n}\n```\n\nFor more configuration about the plugin, see [Plugin Configuration](docs/configuration.md).\n\n## Getting Started\n\nTerraform is a great tool for Infrastructure as Code. However, many of these tools don't validate provider-specific issues. For example, see the following configuration file:\n\n```hcl\nresource \"aws_instance\" \"foo\" {\n  ami           = \"ami-0ff8a91507f77f867\"\n  instance_type = \"t1.2xlarge\" # invalid type!\n}\n```\n\nSince `t1.2xlarge` is an invalid instance type, an error will occur when you run `terraform apply`. But `terraform validate` and `terraform plan` cannot find this possible error in advance. That's because it's an AWS provider-specific issue and it's valid as the Terraform Language.\n\nThe goal of this ruleset is to find such errors:\n\n![demo](docs/assets/demo.gif)\n\nBy running TFLint with this ruleset in advance, you can fix the problem before the error occurs in production CI/CD pipelines.\n\n## Rules\n\n700+ rules are available. See [Rules](docs/rules/README.md).\n\n## Building the plugin\n\nClone the repository locally and run the following command:\n\n```\n$ make\n```\n\nYou can easily install the built plugin with the following:\n\n```\n$ make install\n```\n\nNote that if you install the plugin with `make install`, you must omit the `version` and `source` attributes in` .tflint.hcl`:\n\n```hcl\nplugin \"aws\" {\n    enabled = true\n}\n```\n\n## Add a new rule\n\nIf you are interested in adding a new rule to this ruleset, you can use the generator. Run the following command:\n\n```\n$ go run ./rules/generator\n```\n\nFollow the instructions to edit the generated files and open a new pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterraform-linters%2Ftflint-ruleset-aws","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterraform-linters%2Ftflint-ruleset-aws","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterraform-linters%2Ftflint-ruleset-aws/lists"}