79 lines
1.5 KiB
Terraform
79 lines
1.5 KiB
Terraform
module "import_output" {
|
|
source = "../modules"
|
|
hello = "coucou"
|
|
}
|
|
|
|
resource "helm_release" "cert_manager" {
|
|
name = "cert-manager"
|
|
repository = "oci://quay.io"
|
|
chart = "jetstack/charts/cert-manager"
|
|
version = "v1.21.2"
|
|
namespace = "cert-manager"
|
|
create_namespace = true
|
|
wait = false
|
|
|
|
|
|
set = [
|
|
{
|
|
name = "crds.enabled"
|
|
value = "true"
|
|
}
|
|
]
|
|
}
|
|
|
|
|
|
resource "helm_release" "nginx_ingress" {
|
|
name = "traefik"
|
|
repository = "https://traefik.github.io/charts"
|
|
chart = "traefik"
|
|
version = "v41.7.1"
|
|
namespace = "traefik"
|
|
create_namespace = true
|
|
wait = false
|
|
|
|
|
|
set = [
|
|
{
|
|
name = "ports.web.nodePort"
|
|
value = "80"
|
|
},
|
|
{
|
|
name = "ports.websecure.nodePort"
|
|
value = "443"
|
|
},
|
|
{
|
|
name = "service.type"
|
|
value = "NodePort"
|
|
}
|
|
|
|
]
|
|
}
|
|
|
|
resource "kubernetes_manifest" "letsencrypt_prod" {
|
|
manifest = {
|
|
"apiVersion" = "cert-manager.io/v1"
|
|
"kind" = "ClusterIssuer"
|
|
"metadata" = {
|
|
"name" = "letsencrypt-prod"
|
|
}
|
|
"spec" = {
|
|
"acme" = {
|
|
"email" = "franckrobbin6@gmail.com"
|
|
"privateKeySecretRef" = {
|
|
"name" = "letsencrypt-prod-account-key"
|
|
}
|
|
"server" = "https://acme-v02.api.letsencrypt.org/directory"
|
|
"solvers" = [
|
|
{
|
|
"http01" = {
|
|
"ingress" = {
|
|
"class" = "traefik"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|