-
Notifications
You must be signed in to change notification settings - Fork 2
/
variables.tf
168 lines (160 loc) · 4.08 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
// OVH provider
variable "ovh_endpoint" {
description = "OVH API endpoint"
}
variable "ovh_application_key" {
description = "OVH application key"
sensitive = true
}
variable "ovh_application_secret" {
description = "OVH application secret"
sensitive = true
}
variable "ovh_consumer_key" {
description = "OVH consumer key"
sensitive = true
}
// Google Cloud provider
variable "gcp_credentials" {
description = "Terraform service account credentials JSON file"
sensitive = true
}
variable "gcp_project_id" {
description = "GCP project ID"
}
variable "gcp_region" {
description = "GCP region"
}
variable "gcp_billing_notification_email" {
description = "GCP billing notification email address"
}
// Grafana provider
variable "grafana_url" {
description = "Grafana URL"
}
variable "grafana_auth" {
description = "Grafana API key"
sensitive = true
}
variable "grafana_sm_url" {
description = "Grafana Synthetic Monitoring URL"
}
variable "grafana_sm_access_token" {
description = "Grafana Synthetic Monitoring access token"
sensitive = true
}
// Kubernetes provider
variable "k8s_host" {
description = "Kubernetes master host name"
}
variable "k8s_client_cert" {
description = "Kubernetes client certificate (base64-encoded PEM)"
}
variable "k8s_client_key" {
description = "Kubernetes client private key (base64-encoded PEM)"
sensitive = true
}
variable "k8s_ca_cert" {
description = "Kubernetes cluster CA certificate (base64-encoded PEM)"
}
// Kubernetes config
variable "k8s_calico_version" {
description = "Calico Helm chart version"
}
variable "k8s_certmanager_version" {
description = "Cert-manager Helm chart version"
}
variable "k8s_certmanager_root_ca_crt" {
description = "Root CA certificate (PEM-encoded)"
sensitive = true
}
variable "k8s_certmanager_root_ca_key" {
description = "Root CA key (PEM-encoded)"
sensitive = true
}
variable "k8s_dashboard_version" {
description = "Kubernetes Dashboard Helm chart version"
}
variable "k8s_elastic_operator_version" {
description = "Elastic ECK operator Helm chart version"
}
variable "k8s_ingress_nginx_version" {
description = "Ingress Nginx Helm chart version"
}
variable "k8s_ingress_nginx_external_ips" {
type = list(string)
description = "Ingress Nginx external IPs list"
}
variable "k8s_kubelet_csr_approver_version" {
description = "Kubelet CSR Approver chart version"
}
variable "k8s_metrics_server_version" {
description = "Metrics Server chart version"
}
variable "k8s_openebs_version" {
description = "OpenEBS chart version"
}
// DNS config
variable "dns_zone" {
description = "DNS zone name"
}
variable "dns_records" {
default = []
type = list(object({
name = string
ttl = number
type = string
target = string
}))
description = "DNS records"
}
// Infra
variable "infra_namespace" {
description = "Infra Kubernetes namespace"
}
variable "infra_otelcol_otlphttp_endpoint" {
description = "OpenTelemetry OTLP HTTP endpoint"
}
variable "infra_otelcol_otlphttp_username" {
description = "OpenTelemetry OTLP HTTP username"
}
variable "infra_otelcol_otlphttp_password" {
description = "OpenTelemetry OTLP HTTP password"
sensitive = true
}
variable "infra_otelcol_version" {
description = "OpenTelemetry Collector Helm chart version"
}
// Uptime checks
variable "uptime_check_urls" {
default = []
type = list(string)
description = "Uptime check HTTPS URLs"
}
variable "uptime_frequency" {
description = "Uptime check frequency (ms)"
}
variable "uptime_timeout" {
description = "Uptime check timeout (ms)"
}
// VPN
variable "vpn_machine_type" {
description = "VPN instance machine type"
}
variable "vpn_zones" {
default = []
type = list(string)
description = "VPN instance zones (e.g. us-east1-b, europe-west1-b)"
}
variable "vpn_cacert" {
description = "VPN certificate authority (PEM-encoded)"
sensitive = true
}
variable "vpn_servercert" {
description = "VPN server certificate (PEM-encoded)"
sensitive = true
}
variable "vpn_serverkey" {
description = "VPN server key (PEM-encoded)"
sensitive = true
}