forked from devops-workflow/terraform-aws-s3-buckets
-
Notifications
You must be signed in to change notification settings - Fork 3
/
variables.tf
151 lines (126 loc) · 3.76 KB
/
variables.tf
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
//
// Variables specific to module label
//
variable "attributes" {
description = "Suffix name with additional attributes (policy, role, etc.)"
type = "list"
default = []
}
variable "component" {
description = "TAG: Underlying, dedicated piece of service (Cache, DB, ...)"
type = "string"
default = "UNDEF-S3-Buckets"
}
variable "delimiter" {
description = "Delimiter to be used between `name`, `namespaces`, `attributes`, etc."
type = "string"
default = "-"
}
variable "environment" {
description = "Environment (ex: `dev`, `qa`, `stage`, `prod`). (Second or top level namespace. Depending on namespacing options)"
type = "string"
}
variable "monitor" {
description = "TAG: Should resource be monitored"
type = "string"
default = "UNDEF-S3-Buckets"
}
variable "names" {
description = "List of S3 bucket names"
type = "list"
}
variable "namespace-env" {
description = "Prefix name with the environment. If true, format is: <env>-<name>"
default = true
}
variable "namespace-org" {
description = "Prefix name with the organization. If true, format is: <org>-<env namespaced name>. If both env and org namespaces are used, format will be <org>-<env>-<name>"
default = true
}
variable "organization" {
description = "Organization name (Top level namespace)"
type = "string"
default = ""
}
variable "owner" {
description = "TAG: Owner of the service"
type = "string"
default = "UNDEF-S3-Buckets"
}
variable "product" {
description = "TAG: Company/business product"
type = "string"
default = "UNDEF-S3-Buckets"
}
variable "service" {
description = "TAG: Application (microservice) name"
type = "string"
default = "UNDEF-S3-Buckets"
}
variable "tags" {
description = "A map of additional tags"
type = "map"
default = {}
}
variable "team" {
description = "TAG: Department/team of people responsible for service"
type = "string"
default = "UNDEF-S3-Buckets"
}
//
// Module specific Variables
//
variable "enabled" {
description = "Set to false to prevent the module from creating anything"
default = true
}
variable "force_destroy" {
description = "Delete all objects in bucket on destroy"
default = false
}
variable "encryption" {
type = "string"
default = "true"
description = "If encryption is true, create an S3 bucket with default encryption i.e. `AES256`"
}
variable "kms_master_key_arn" {
type = "string"
default = ""
description = "The AWS KMS master key ARN used for the SSE-KMS encryption. This can only be used when you set the value of encryption as true. The default aws/s3 AWS KMS master key is used if this element is absent"
}
variable "allow_encrypted_uploads_only" {
type = "string"
default = "false"
description = "Set to `true` to prevent uploads of unencrypted objects to S3 bucket"
}
variable "principal" {
description = "principal"
default = "*"
}
variable "public" {
description = "Allow public read access to bucket"
default = false
}
variable "versioned" {
description = "Version the bucket"
default = false
}
//
// S3 Public restriction block
//
variable "block_public_acls" {
description = "Whether Amazon S3 should block public ACLs for this bucket"
default = true
}
variable "block_public_policy" {
description = "Whether Amazon S3 should block public bucket policies for this bucket"
default = true
}
variable "ignore_public_acls" {
description = "Whether Amazon S3 should ignore public ACLs for this bucket"
default = true
}
variable "restrict_public_buckets" {
description = "Whether Amazon S3 should restrict public bucket policies for this bucket"
default = true
}