Skip to content

Commit 84a92eb

Browse files
committed
Migrate to wildcard certs for httptoolk.it as well
1 parent c51ee3d commit 84a92eb

File tree

3 files changed

+27
-40
lines changed

3 files changed

+27
-40
lines changed

certificates.tf

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -54,12 +54,6 @@ resource "kubectl_manifest" "letsencrypt_prod" {
5454
}
5555
}
5656
}
57-
selector = {
58-
dnsNames = [
59-
"httptoolkit.tech",
60-
"*.httptoolkit.tech"
61-
]
62-
}
6357
}
6458
]
6559
}
@@ -72,23 +66,6 @@ resource "kubectl_manifest" "letsencrypt_prod" {
7266
]
7367
}
7468

75-
# Manually set up the TLS cert for *.e.httptoolk.it, for now:
76-
resource "kubernetes_secret_v1" "cert_httptoolk_it" {
77-
metadata {
78-
name = "cert-httptoolk-it"
79-
namespace = "certificates"
80-
}
81-
82-
type = "kubernetes.io/tls"
83-
84-
data = {
85-
"tls.crt" = var.httptoolk_it_tls_cert
86-
"tls.key" = var.httptoolk_it_tls_key
87-
}
88-
89-
depends_on = [helm_release.envoy_gateway]
90-
}
91-
9269
# We create a new app & API key for cert manager to automate our DNS:
9370
resource "scaleway_iam_application" "acme_dns_bot" {
9471
name = "acme-dns-bot"
@@ -154,9 +131,31 @@ resource "kubectl_manifest" "cert_wildcard_httptoolkit_tech" {
154131
]
155132
}
156133
})
134+
depends_on = [kubectl_manifest.letsencrypt_prod]
135+
}
157136

158-
depends_on = [
159-
kubectl_manifest.letsencrypt_prod,
160-
kubectl_manifest.gateways
161-
]
137+
138+
resource "kubectl_manifest" "cert_wildcard_httptoolk_it" {
139+
yaml_body = yamlencode({
140+
apiVersion = "cert-manager.io/v1"
141+
kind = "Certificate"
142+
metadata = {
143+
name = "cert-wildcard-httptoolk-it"
144+
namespace = "certificates"
145+
}
146+
spec = {
147+
secretName = "cert-wildcard-httptoolk-it"
148+
issuerRef = {
149+
name = "letsencrypt-prod"
150+
kind = "ClusterIssuer"
151+
}
152+
commonName = "httptoolk.it"
153+
dnsNames = [
154+
"httptoolk.it",
155+
"*.httptoolk.it",
156+
"*.e.httptoolk.it"
157+
]
158+
}
159+
})
160+
depends_on = [kubectl_manifest.letsencrypt_prod]
162161
}

gateway.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ locals {
7474
}
7575
tls = {
7676
mode = "Terminate"
77-
certificateRefs = [{ kind = "Secret", namespace = "certificates", name = "cert-httptoolk-it" }]
77+
certificateRefs = [{ kind = "Secret", namespace = "certificates", name = "cert-wildcard-httptoolk-it" }]
7878
}
7979
},
8080
// TLS termination but then raw TCP passthrough for the endpoint admin:

variables.tf

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,4 @@ variable "secondary_zone" {
3131
type = string
3232
default = "fr-par-2"
3333
description = "Secondary/failover zone for zonal resources"
34-
}
35-
36-
variable "httptoolk_it_tls_cert" {
37-
description = "PEM-encoded TLS certificate for *.e.httptoolk.it"
38-
type = string
39-
sensitive = true
40-
}
41-
42-
variable "httptoolk_it_tls_key" {
43-
description = "PEM-encoded TLS private key for *.e.httptoolk.it"
44-
type = string
45-
sensitive = true
4634
}

0 commit comments

Comments
 (0)