This repository has been archived by the owner on Sep 23, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
281 lines (237 loc) · 7.13 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
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
# Description: Variables for the mastodon terraform module
variable "project_id" {
type = string
description = "The GCP project id to install the P∏"
}
variable "name" {
type = string
description = "Mastodon project name, it will be used as a prefix for all resources"
}
variable "domain" {
type = string
description = "This is the unique identifier of your server in the network. It cannot be safely changed later, as changing it will cause remote servers to confuse your existing accounts with entirely new ones. It has to be the domain name you are running the server under (without the protocol part, e.g. just example.com)."
}
variable "region" {
type = string
description = "The region to host the cluster in"
default = "europe-west1"
}
variable "gcp_default_labels" {
type = map(string)
description = "Default labels to apply to all resources"
default = null
}
variable "gke_maintenance_start_time" {
type = string
description = "The start time for the maintenance window"
default = "1970-01-01T00:00:00Z"
}
variable "gke_maintenance_end_time" {
type = string
description = "The end time for the maintenance window"
default = "1970-01-01T04:00:00Z"
}
variable "gke_maintenance_recurrence" {
type = string
description = "The recurrence for the maintenance window"
default = "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU"
}
variable "gke_authenticator_security_group" {
type = string
description = "The security group to allow access to the cluster"
}
variable "gke_zone" {
type = list(any)
description = "gke_zone within the region to use this cluster"
default = [
"europe-west1-b",
]
}
variable "gke_kubernetes_version" {
type = string
description = "The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region."
default = "latest"
}
variable "gke_workload_config_audit_mode" {
type = string
description = "The mode for workload identity config audit"
default = ""
}
variable "gke_workload_vulnerability_mode" {
type = string
description = "The mode for workload identity vulnerability"
default = ""
}
variable "gke_create_service_account" {
type = bool
description = "Defines if service account specified to run nodes should be created."
default = true
}
variable "gke_service_account" {
type = string
description = "The service account to run nodes as if not overridden in node_pools. The gke_create_service_account variable default value (true) will cause a cluster-specific service account to be created. This service account should already exists and it will be used by the node pools. If you wish to only override the service account name, you can use service_account_name variable."
default = ""
}
variable "gke_service_account_name" {
type = string
description = "The name of the service account that will be created if gke_create_service_account is true. If you wish to use an existing service account, use gke_service_account variable."
default = ""
}
variable "kubernetes_namespace" {
type = string
description = "The name of the namespace to deploy the application in"
default = "mastodon"
}
# Network.
variable "subnet_ip" {
type = string
description = "The cidr range of the subnet"
default = "10.10.10.0/24"
}
# Storage.
variable "bucket_location" {
type = string
description = "Bucket location"
}
variable "bucket_versioning" {
description = "Enable bucket versioning"
type = bool
default = true
}
variable "bucket_force_destroy" {
description = "Force destroy bucket"
type = bool
default = false
}
variable "bucket_storage_class" {
description = "The Storage Class of the new bucket."
type = string
default = null
}
# Memorystore redis instance.
variable "memorystore_redis_enabled" {
type = bool
description = "Enable memorystore redis"
default = true
}
variable "memorystore_redis_size" {
type = string
description = "The size of the redis instance"
default = "1"
}
variable "memorystore_redis_tier" {
type = string
description = "The tier of the redis instance"
default = "BASIC"
}
# Cloudsql
variable "cloudsql_zone" {
type = string
}
variable "cloudsql_disk_size" {
type = number
description = "The disk size for the master instance."
default = 10
}
variable "cloudsql_disk_type" {
type = string
description = "The disk type for the master instance."
default = "PD_SSD"
}
variable "cloudsql_enable_backup" {
type = bool
description = "Setup if postgres backup configuration is enabled.Default true"
default = true
}
variable "cloudsql_backup_start_time" {
type = string
description = "HH:MM format time indicating when postgres backup configuration starts."
default = "02:00"
}
variable "cloudsql_backup_retained_count" {
type = number
description = "Numeber of postgres backup to be retained. Default 30."
default = "30"
}
variable "cloudsql_deletion_protection" {
type = bool
description = "Enable deletion protection for the cloudsql instance."
default = false
}
variable "cloudsql_tier" {
type = string
description = "The tier of the master instance."
default = "db-g1-small"
}
variable "cloudsql_pgsql_version" {
type = string
description = "value of the postgresql version"
default = "POSTGRES_14"
}
# Mastodon instance.
variable "app_keys" {
type = set(string)
description = "Mastodon secret keys"
default = (["secret_key_base", "otp_secret"])
}
variable "app_create_admin" {
type = bool
description = "Create admin account"
default = false
}
variable "app_admin_email" {
type = string
description = "Admin email"
default = "not@localhost"
}
variable "app_admin_username" {
type = string
description = "Admin username"
default = "not_gargron"
}
variable "app_locale" {
type = string
description = "Mastodon locale"
default = "en"
}
variable "app_s3_existing_secret" {
type = string
description = "S3 existing secret name"
default = null
}
variable "app_smtp_username" {
type = string
description = "SMTP username"
default = null
}
variable "app_smtp_password" {
type = string
description = "SMTP password"
default = null
sensitive = true
}
variable "app_smtp_existing_secret" {
type = string
description = "SMTP existing secret name"
default = null
}
variable "app_existing_secret_name" {
type = string
description = "Mastodon existing secret name"
default = null
}
variable "app_vapid_public_key" {
type = string
description = "Mastodon vapid public key"
default = null
}
variable "app_vapid_private_key" {
type = string
description = "Mastodon vapid private key"
default = null
}
variable "app_helm_additional_values" {
type = string
description = "Additional values to pass to the helm"
default = ""
}