-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathvariables.tf
228 lines (195 loc) · 6 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
variable "chart_version" {
type = string
description = "Specifies the version of the Helm chart to be installed"
default = "0.1.59"
nullable = false
}
variable "release_name" {
type = string
description = "Specifies the name of the Helm release"
default = "ocean-controller"
nullable = false
}
variable "wait" {
type = bool
description = "Controls whether to wait for Helm release to deploy"
default = false
}
variable "values_file" {
type = string
description = "values.yaml file to be used for the Ocean Controller"
default = null
}
variable "namespace" {
type = string
description = "Specifies the namespace where the Ocean Controller should be deployed"
default = "spot-system"
}
variable "create_namespace" {
type = bool
description = "Controls whether the namespace should be created if it does not exist"
default = true
}
variable "spotinst_token" {
type = string
description = "Specifies the Spot Personal Access token"
default = null
}
variable "spotinst_account" {
type = string
description = "Specifies the Spot account ID"
default = null
}
variable "cluster_identifier" {
type = string
description = "Specifies the cluster identifier"
default = null
}
variable "create_controller" {
type = bool
description = "Controls whether the Ocean Controller should be deployed (it affects all resources)"
default = true
}
variable "controller_image" {
type = string
description = "Specifies the Docker image name for the Ocean Controller that should be deployed"
default = null # Do not override chart
}
variable "controller_version" {
type = string
description = "Specifies the Docker version for the Ocean Controller that should be deployed"
default = null # Do not override chart
}
variable "image_pull_policy" {
type = string
description = "Specifies the image pull policy (one of: Always, Never, IfNotPresent)"
default = "Always"
}
variable "base_url" {
type = string
description = "Specifies the base URL to be used by the HTTP client"
default = null
}
variable "proxy_url" {
type = string
description = "Specifies the proxy server URL to communicate through"
default = null
}
variable "enable_csr_approval" {
type = bool
description = "Controls whether the CSR approval feature should be enabled"
default = true
}
variable "disable_auto_update" {
type = bool
description = "Controls whether the auto-update feature should be disabled"
default = true
}
variable "disable_rightsizing" {
type = bool
description = "Controls whether the rightsizing feature should be disabled"
default = false
}
variable "image_pull_secrets" {
type = list(string)
description = "Specifies a list of references to secrets in the same namespace to use for pulling the image"
default = []
}
variable "resources_limits" {
type = map(any)
description = "Specifies the definition of the maximum amount of compute resources allowed"
default = null
// default = {
// cpu = "0.5"
// memory = "512Mi"
// }
}
variable "resources_requests" {
type = map(any)
description = "Specifies the definition of the minimum amount of compute resources required"
default = null
// default = {
// cpu = "0.5"
// memory = "512Mi"
// }
}
variable "tolerations" {
type = list(any)
description = "Specifies a list of additional `toleration` objects"
default = null
# default = [
# {
# key = "node.kubernetes.io/not-ready"
# effect = "NoExecute"
# operator = "Exists"
# tolerationSeconds = 150
# },
# {
# key = "node.kubernetes.io/unreachable"
# effect = "NoExecute"
# operator = "Exists"
# tolerationSeconds = 150
# },
# ]
}
variable "node_selector" {
type = map(string)
description = "Specifies the node selector which must match a node's labels for the Ocean Controller resources to be scheduled on that node"
default = null
}
variable "secret_name" {
type = string
description = "Overrides the default secret name"
default = null
}
variable "service_account_name" {
type = string
description = "Overrides the default service account name"
default = "controller-service-account-name"
}
variable "config_map_name" {
type = string
description = "Overrides the default configmap name"
default = null
}
variable "ca_bundle_secret_name" {
type = string
description = "Overrides the default secret name for custom CA bundle"
default = null
}
# AKS not supported yet
# variable "aks_connector_enabled" {
# type = bool
# description = "Controls whether the Ocean AKS Connector should be deployed (requires a valid `acd_identifier`)"
# default = true
# }
# variable "aks_connector_image" {
# type = string
# description = "Specifies the Docker image name for the Ocean AKS Connector that should be deployed"
# default = "spotinst/ocean-aks-connector"
# }
# variable "aks_connector_version" {
# type = string
# description = "Specifies the Docker version for the Ocean AKS Connector that should be deployed"
# default = "1.0.12"
# }
# variable "acd_identifier" {
# type = string
# description = "Specifies a unique identifier used by the Ocean AKS Connector when importing an AKS cluster"
# default = null
# }
# variable "aks_connector_job_name" {
# type = string
# description = "Overrides the default job name for the Ocean AKS Connector"
# default = null
# }
variable "deploy_metrics_server" {
type = bool
description = "Controls whether the metrics server should be deployed"
default = false
}
variable "replicas" {
type = number
description = "Controls number of replicas"
default = null
}