-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.tf
75 lines (72 loc) · 3.12 KB
/
main.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
module "storage" {
source = "./storage"
user = var.user
gateway_ip = var.gateway_ip
vm_template_id = var.vm_template_id
truenas_ip = var.truenas_ip
}
module "routing" {
source = "./routing"
user = var.user
gateway_ip = var.gateway_ip
vm_template_id = var.vm_template_id
coredns_ip = var.coredns_ip
forward_proxy_ip = var.forward_proxy_ip
corefile = templatefile("Corefile.tftpl", {
gateway_ip = split("/", var.gateway_ip)[0]
argocd_ip = split("/", var.argocd_ip)[0]
coredns_ip = split("/", var.coredns_ip)[0]
dashboard_ip = split("/", var.dashboard_ip)[0]
hubble_ip = split("/", var.hubble_ip)[0]
kubernetes_server_ip = split("/", var.kubernetes_server_ip)[0]
kubernetes_node_one_ip = split("/", var.kubernetes_node_one_ip)[0]
kubernetes_node_two_ip = split("/", var.kubernetes_node_two_ip)[0]
nginx_ip = split("/", var.forward_proxy_ip)[0]
truenas_ip = split("/", var.truenas_ip)[0]
})
ca_private_key_pem = tls_private_key.ca.private_key_pem
ca_cert_pem = tls_self_signed_cert.ca.cert_pem
}
module "bootstrap" {
source = "./bootstrap"
user = var.user
pg_vault_ip = var.pg_vault_ip
pg_user_kubernetes = var.pg_user_kubernetes
pg_password_kubernetes = var.pg_password_kubernetes
pg_database_kubernetes = var.pg_database_kubernetes
pg_user_vault = var.pg_user_vault
pg_password_vault = var.pg_password_vault
pg_database_vault = var.pg_database_vault
pg_user_terraform = var.pg_user_terraform
pg_password_terraform = var.pg_password_terraform
pg_database_terraform = var.pg_database_terraform
gateway_ip = var.gateway_ip
vm_template_id = var.vm_template_id
ca_private_key_pem = tls_private_key.ca.private_key_pem
ca_cert_pem = tls_self_signed_cert.ca.cert_pem
}
module "kubernetes" {
source = "./kubernetes/k8s"
gateway_ip = var.gateway_ip
vm_template_id = var.vm_template_id
user = var.user
vault_token = module.bootstrap.vault_root_token
pg_vault_ip = var.pg_vault_ip
pg_user_vault = var.pg_user_vault
pg_password_vault = var.pg_password_vault
pg_user_terraform = var.pg_user_terraform
pg_password_terraform = var.pg_password_terraform
pg_database_terraform = var.pg_database_terraform
pg_user_kubernetes = var.pg_user_kubernetes
pg_password_kubernetes = var.pg_password_kubernetes
pg_database_kubernetes = var.pg_database_kubernetes
kubernetes_server_ip = var.kubernetes_server_ip
kubernetes_node_one_ip = var.kubernetes_node_one_ip
kubernetes_node_two_ip = var.kubernetes_node_two_ip
argocd_ip = var.argocd_ip
hubble_ip = var.hubble_ip
dashboard_ip = var.dashboard_ip
k8s_app_ip_range = var.k8s_app_ip_range
ca_private_key_pem = tls_private_key.ca.private_key_pem
ca_cert_pem = tls_self_signed_cert.ca.cert_pem
}