-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrancher.tf
65 lines (59 loc) · 1.48 KB
/
rancher.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
resource "kubectl_manifest" "rancher_ns" {
yaml_body = <<YAML
apiVersion: v1
kind: Namespace
metadata:
name: cattle-system
YAML
}
resource "kubectl_manifest" "rancher_cert" {
count = var.cert-manager.enabled ? 1 : 0
depends_on = [
module.cert-manager,
kubectl_manifest.rancher_ns
]
yaml_body = <<YAML
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: rancher-tls
namespace: cattle-system
spec:
secretName: tls-rancher-ingress
dnsNames:
- ${var.rancher.domain}
issuerRef:
name: cloudflare-issuer
kind: ClusterIssuer
group: cert-manager.io
YAML
}
module "rancher" {
depends_on = [
module.cert-manager[0],
kubectl_manifest.rancher_cert[0],
]
# source = "git::https://github.com/julienym/myTerraformModules.git//helm?ref=1.0.0"
source = "../myTerraformModules/helm"
name = "rancher"
repository = "https://releases.rancher.com/server-charts/stable"
namespace = "cattle-system"
chart = "rancher"
chart_version = var.rancher.version
values = {
hostname = var.rancher.domain
"ingress.tls.source" = var.cert-manager.enabled ? "secret" : "rancher"
bootstrapPassword = var.rancher_bootstrap
"certmanager.version" = var.cert-manager.enabled ? "1.7.1" : null
replicas = var.rancher.replicas
}
}
resource "rancher2_bootstrap" "admin" {
depends_on = [
module.rancher
]
provider = rancher2.bootstrap
initial_password = var.rancher_bootstrap
password = var.rancher_bootstrap
telemetry = true
}