fmt code
This commit is contained in:
parent
444ca7df3a
commit
077f9383ed
7 changed files with 104 additions and 109 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
variable "stackit_project_id" {
|
variable "stackit_project_id" {
|
||||||
type = string
|
type = string
|
||||||
default = "XXXXX-XXXX-XXXX-XXXX-XXXXXXX"
|
/*default = "XXXXX-XXXX-XXXX-XXXX-XXXXXXX"*/
|
||||||
/*default = "d75e6aab-b616-4b42-ae3b-aaf161ad626d"*/
|
default = "d75e6aab-b616-4b42-ae3b-aaf161ad626d"
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "stackit_region" {
|
variable "stackit_region" {
|
||||||
|
|
|
||||||
106
03-rancher.tf
106
03-rancher.tf
|
|
@ -36,109 +36,3 @@ resource "stackit_ske_kubeconfig" "example" {
|
||||||
cluster_name = stackit_ske_cluster.default.name
|
cluster_name = stackit_ske_cluster.default.name
|
||||||
refresh = true
|
refresh = true
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "kubernetes_namespace" "rancher" {
|
|
||||||
metadata {
|
|
||||||
name = "rancher"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "kubernetes_namespace" "cert_manager" {
|
|
||||||
metadata {
|
|
||||||
name = "cert-manager"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "kubernetes_namespace" "nginx" {
|
|
||||||
metadata {
|
|
||||||
name = "nginx"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "helm_release" "cert_manager" {
|
|
||||||
name = "cert-manager"
|
|
||||||
namespace = kubernetes_namespace.cert_manager.metadata[0].name
|
|
||||||
repository = "https://charts.jetstack.io"
|
|
||||||
chart = "cert-manager"
|
|
||||||
version = "1.17.2"
|
|
||||||
|
|
||||||
values = [<<EOF
|
|
||||||
installCRDs: true
|
|
||||||
EOF
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "stackit_public_ip" "public_ip" {
|
|
||||||
project_id = var.stackit_project_id
|
|
||||||
|
|
||||||
lifecycle {
|
|
||||||
ignore_changes = [network_interface_id]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "stackit_dns_zone" "rancher_zone" {
|
|
||||||
project_id = var.stackit_project_id
|
|
||||||
name = "rancher${random_string.random.result}"
|
|
||||||
dns_name = "rancher${random_string.random.result}.runs.onstackit.cloud"
|
|
||||||
type = "primary"
|
|
||||||
default_ttl = 60
|
|
||||||
contact_email = "hostmaster@stackit.cloud"
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "stackit_dns_record_set" "a_record" {
|
|
||||||
project_id = var.stackit_project_id
|
|
||||||
zone_id = stackit_dns_zone.rancher_zone.zone_id
|
|
||||||
name = "ui"
|
|
||||||
type = "A"
|
|
||||||
ttl = 60
|
|
||||||
comment = "ui for rancher"
|
|
||||||
records = [stackit_public_ip.public_ip.ip]
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "helm_release" "nginx_ingress" {
|
|
||||||
name = "nginx-ingress"
|
|
||||||
repository = "https://kubernetes.github.io/ingress-nginx"
|
|
||||||
chart = "ingress-nginx"
|
|
||||||
version = "4.12.2"
|
|
||||||
namespace = kubernetes_namespace.nginx.metadata[0].name
|
|
||||||
|
|
||||||
values = [
|
|
||||||
<<EOF
|
|
||||||
controller:
|
|
||||||
replicaCount: 1
|
|
||||||
service:
|
|
||||||
type: LoadBalancer
|
|
||||||
annotations:
|
|
||||||
lb.stackit.cloud/external-address: ${stackit_public_ip.public_ip.ip}
|
|
||||||
EOF
|
|
||||||
]
|
|
||||||
|
|
||||||
timeout = 600
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "helm_release" "rancher" {
|
|
||||||
name = "rancher"
|
|
||||||
namespace = kubernetes_namespace.rancher.metadata[0].name
|
|
||||||
repository = "https://releases.rancher.com/server-charts/stable"
|
|
||||||
chart = "rancher"
|
|
||||||
version = "2.11.1"
|
|
||||||
|
|
||||||
values = [<<EOF
|
|
||||||
hostname: "${stackit_dns_record_set.a_record.name}.${stackit_dns_zone.rancher_zone.dns_name}"
|
|
||||||
ingress:
|
|
||||||
enabled: true
|
|
||||||
ingressClassName: "nginx"
|
|
||||||
|
|
||||||
tls:
|
|
||||||
source: rancher
|
|
||||||
secretName: tls-rancher-ingress
|
|
||||||
|
|
||||||
EOF
|
|
||||||
]
|
|
||||||
|
|
||||||
depends_on = [helm_release.cert_manager]
|
|
||||||
}
|
|
||||||
|
|
||||||
output "rancher" {
|
|
||||||
value = "${stackit_dns_record_set.a_record.name}.${stackit_dns_zone.rancher_zone.dns_name}"
|
|
||||||
}
|
|
||||||
17
04-k8s-ns.tf
Normal file
17
04-k8s-ns.tf
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
resource "kubernetes_namespace" "rancher" {
|
||||||
|
metadata {
|
||||||
|
name = "rancher"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "kubernetes_namespace" "cert_manager" {
|
||||||
|
metadata {
|
||||||
|
name = "cert-manager"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "kubernetes_namespace" "nginx" {
|
||||||
|
metadata {
|
||||||
|
name = "nginx"
|
||||||
|
}
|
||||||
|
}
|
||||||
18
05-dns.tf
Normal file
18
05-dns.tf
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
resource "stackit_dns_zone" "rancher_zone" {
|
||||||
|
project_id = var.stackit_project_id
|
||||||
|
name = "rancher${random_string.random.result}"
|
||||||
|
dns_name = "rancher${random_string.random.result}.runs.onstackit.cloud"
|
||||||
|
type = "primary"
|
||||||
|
default_ttl = 60
|
||||||
|
contact_email = "hostmaster@stackit.cloud"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "stackit_dns_record_set" "ui_a_record" {
|
||||||
|
project_id = var.stackit_project_id
|
||||||
|
zone_id = stackit_dns_zone.rancher_zone.zone_id
|
||||||
|
name = "ui"
|
||||||
|
type = "A"
|
||||||
|
ttl = 60
|
||||||
|
comment = "ui for rancher"
|
||||||
|
records = [stackit_public_ip.public_ip.ip]
|
||||||
|
}
|
||||||
7
06-public-ip.tf
Normal file
7
06-public-ip.tf
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
resource "stackit_public_ip" "public_ip" {
|
||||||
|
project_id = var.stackit_project_id
|
||||||
|
|
||||||
|
lifecycle {
|
||||||
|
ignore_changes = [network_interface_id]
|
||||||
|
}
|
||||||
|
}
|
||||||
56
07-helm.tf
Normal file
56
07-helm.tf
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
resource "helm_release" "cert_manager" {
|
||||||
|
name = "cert-manager"
|
||||||
|
namespace = kubernetes_namespace.cert_manager.metadata[0].name
|
||||||
|
repository = "https://charts.jetstack.io"
|
||||||
|
chart = "cert-manager"
|
||||||
|
version = "1.17.2"
|
||||||
|
|
||||||
|
values = [<<EOF
|
||||||
|
installCRDs: true
|
||||||
|
EOF
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "helm_release" "nginx_ingress" {
|
||||||
|
name = "nginx-ingress"
|
||||||
|
repository = "https://kubernetes.github.io/ingress-nginx"
|
||||||
|
chart = "ingress-nginx"
|
||||||
|
version = "4.12.2"
|
||||||
|
namespace = kubernetes_namespace.nginx.metadata[0].name
|
||||||
|
|
||||||
|
values = [
|
||||||
|
<<EOF
|
||||||
|
controller:
|
||||||
|
replicaCount: 1
|
||||||
|
service:
|
||||||
|
type: LoadBalancer
|
||||||
|
annotations:
|
||||||
|
lb.stackit.cloud/external-address: ${stackit_public_ip.public_ip.ip}
|
||||||
|
EOF
|
||||||
|
]
|
||||||
|
|
||||||
|
timeout = 600
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "helm_release" "rancher" {
|
||||||
|
name = "rancher"
|
||||||
|
namespace = kubernetes_namespace.rancher.metadata[0].name
|
||||||
|
repository = "https://releases.rancher.com/server-charts/stable"
|
||||||
|
chart = "rancher"
|
||||||
|
version = "2.11.1"
|
||||||
|
|
||||||
|
values = [<<EOF
|
||||||
|
hostname: "${stackit_dns_record_set.ui_a_record.name}.${stackit_dns_zone.rancher_zone.dns_name}"
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
ingressClassName: "nginx"
|
||||||
|
|
||||||
|
tls:
|
||||||
|
source: rancher
|
||||||
|
secretName: tls-rancher-ingress
|
||||||
|
|
||||||
|
EOF
|
||||||
|
]
|
||||||
|
|
||||||
|
depends_on = [helm_release.cert_manager]
|
||||||
|
}
|
||||||
3
08-outputs.tf
Normal file
3
08-outputs.tf
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
output "rancher" {
|
||||||
|
value = "${stackit_dns_record_set.ui_a_record.name}.${stackit_dns_zone.rancher_zone.dns_name}"
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue