-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.tflint.hcl
102 lines (81 loc) · 1.93 KB
/
.tflint.hcl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
plugin "terraform"{
enabled = true
preset = "recommended"
}
plugin "aws"{
enabled = true
version = "0.21.1"
source = "github.com/terraform-linters/tflint-ruleset-aws"
}
# Disallow deprecated (0.11-style) interpolation
rule "terraform_deprecated_interpolation"{
enabled = true
}
# Disallow legacy dot index syntax.
rule "terraform_deprecated_index"{
enabled = true
}
# Disallow variables, data sources, and locals that are declared but never used.
rule "terraform_unused_declarations"{
enabled = true
}
# Disallow // comments in favor of #.
rule "terraform_comment_syntax"{
enabled = false
}
# Disallow output declarations without description.
rule "terraform_documented_outputs"{
enabled = true
}
# Disallow variable declarations without description.
rule "terraform_documented_variables"{
enabled = true
}
# Disallow variable declarations without type.
rule "terraform_typed_variables"{
enabled = true
}
# Disallow specifying a git or mercurial repository as a module source without pinning to a version.
rule "terraform_module_pinned_source"{
enabled = true
}
# Enforces naming conventions
rule "terraform_naming_convention"{
enabled = true
#Require specific naming structure
variable {
format = "snake_case"
}
locals {
format = "snake_case"
}
output {
format = "snake_case"
}
#Allow any format
resource {
format = "none"
}
module {
format = "none"
}
data {
format = "none"
}
}
# Disallow terraform declarations without require_version.
rule "terraform_required_version"{
enabled = true
}
# Require that all providers have version constraints through required_providers.
rule "terraform_required_providers"{
enabled = true
}
# Ensure that a module complies with the Terraform Standard Module Structure
rule "terraform_standard_module_structure"{
enabled = true
}
# terraform.workspace should not be used with a "remote" backend with remote execution.
rule "terraform_workspace_remote"{
enabled = true
}