-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvariables.tf
154 lines (138 loc) · 3.74 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
#################################################
# Input Configuration Values
#################################################
variable "env" {
type = string
default = "dev"
description = "The deployment environment or stage. Use 'production' to eliminate environment prefixes and set the API Gateway Stage to production."
}
variable "tags" {
type = map(string)
default = {}
description = "The default tgs to assign the created resources."
}
variable "app_name" {
type = string
description = "The app name"
}
variable "app_domain" {
type = string
description = "The app domain name"
}
variable "log_retention_days" {
type = number
default = 14
description = "The number of days to retain log files. Default: 14"
}
variable "local_dev_endpoint" {
type = string
default = "http://localhost:19006"
description = "The local development server endpoint, like http://localhost:19006. Used for CORS access. Defaults to: http://localhost:19006"
}
variable "anonymous" {
type = bool
default = false
description = "Ultimately, controls the Cognito deployment. Set this to `true` skip deploying Cognito."
}
variable "cognito_logo_path" {
type = string
default = ""
description = "The path to a logo file for Cognito. Ideally, 350px wide. MUST not exceed 100kb."
}
variable "cognito_css_path" {
type = string
default = ""
description = "The path to a CSS file for Cognito. See schema comments for help."
}
variable "request_params" {
type = map(string)
default = {}
description = "The request parameter mapping for the lambda integration."
}
variable "token_map" {
type = map(string)
default = {}
description = "The token mapping for the lambda environment variable integration."
}
variable "web_apps" {
type = map(string)
default = {}
description = "The mapping of sub-domains (key) to bucket resource paths (value)."
}
variable "identity_providers" {
type = list(object({
name = string
type = string
mapping = map(string)
details = map(string)
}))
default = []
description = "The user pool identity providers to be connected."
}
variable "token_validity" {
type = object({
id_token = object({
duration = number
units = string
})
access_token = object({
duration = number
units = string
})
refresh_token = object({
duration = number
units = string
})
})
default = {
id_token = {
duration = 30
units = "days"
}
access_token = {
duration = 1
units = "hours"
}
refresh_token = {
duration = 1
units = "hours"
}
}
description = "The token validity durations used by the user pool."
}
variable "password_rules" {
type = object({
minimum_length = number
require_numbers = bool
require_symbols = bool
require_lowercase = bool
require_uppercase = bool
})
default = {
minimum_length = 10
require_lowercase = true
require_numbers = true
require_symbols = true
require_uppercase = true
}
description = "The password complexity rules used by the user pool during sign up."
}
variable "lambda_configs" {
type = map(object({
runtime = string,
memory = number,
timeout = number,
file = string,
handler = string,
description = string,
architecture = string,
anonymous = bool,
environment = map(string),
cloudfront_event = string,
routes = set(object({
method = string,
path = string
}))
}))
description = "A map of name-keyed maps of lambda configurations."
}