@@ -10,6 +10,7 @@ locals {
10
10
coder_release_name = var. name
11
11
provisionerd_helm_chart = " coder-provisioner"
12
12
provisionerd_release_name = " ${ var . name } -provisionerd"
13
+ dnsNames = regex (" https?://([^/]+)" , local. coder_url )
13
14
}
14
15
15
16
resource "kubernetes_namespace" "coder_namespace" {
@@ -61,31 +62,49 @@ data "kubernetes_secret" "coder_oidc" {
61
62
}
62
63
}
63
64
64
- resource "kubernetes_manifest" "coder_certificate" {
65
- manifest = {
66
- apiVersion = " cert-manager.io/v1"
67
- kind = " Certificate"
68
- metadata = {
69
- name = " ${ var . name } "
70
- namespace = kubernetes_namespace.coder_namespace.metadata.0 .name
71
- }
72
- spec = {
73
- secretName = " ${ var . name } -tls"
74
- dnsNames = regex (" https?://([^/]+)" , local. coder_url )
75
- issuerRef = {
76
- name = kubernetes_manifest.cloudflare- cluster- issuer.manifest.metadata.name
77
- kind = " ClusterIssuer"
78
- }
79
- }
80
- }
65
+ # resource "kubernetes_manifest" "coder_certificate" {
66
+ # manifest = {
67
+ # apiVersion = "cert-manager.io/v1"
68
+ # kind = "Certificate"
69
+ # metadata = {
70
+ # name = "${var.name}"
71
+ # namespace = kubernetes_namespace.coder_namespace.metadata.0.name
72
+ # }
73
+ # spec = {
74
+ # secretName = "${var.name}-tls"
75
+ # dnsNames = regex("https?://([^/]+)", local.coder_url)
76
+ # issuerRef = {
77
+ # name = "cloudflare-issuer"
78
+ # kind = "ClusterIssuer"
79
+ # }
80
+ # }
81
+ # }
82
+ # }
83
+
84
+ resource "kubectl_manifest" "coder_certificate" {
85
+ depends_on = [ helm_release . cert-manager ]
86
+ yaml_body = << YAML
87
+ apiVersion: cert-manager.io/v1
88
+ kind: Certificate
89
+ metadata:
90
+ name: ${ var . name }
91
+ namespace: ${ kubernetes_namespace . coder_namespace . metadata . 0 . name }
92
+ spec:
93
+ secretName: ${ var . name } -tls
94
+ dnsNames:
95
+ - ${ local . dnsNames . 0 }
96
+ issuerRef:
97
+ name: cloudflare-issuer
98
+ kind: ClusterIssuer
99
+ YAML
81
100
}
82
101
83
102
data "kubernetes_secret" "coder_tls" {
84
103
metadata {
85
104
namespace = kubernetes_namespace. coder_namespace . metadata . 0 . name
86
105
name = " ${ var . name } -tls"
87
106
}
88
- depends_on = [kubernetes_manifest . coder_certificate ]
107
+ depends_on = [kubectl_manifest . coder_certificate ]
89
108
}
90
109
91
110
resource "helm_release" "coder-chart" {
@@ -153,29 +172,29 @@ coder:
153
172
key: psk
154
173
name: "${ kubernetes_secret . provisionerd_psk . metadata . 0 . name } "
155
174
# Enable OIDC
156
- - name: "CODER_OIDC_ISSUER_URL"
157
- valueFrom:
158
- secretKeyRef:
159
- key: issuer-url
160
- name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
161
- - name: "CODER_OIDC_EMAIL_DOMAIN"
162
- valueFrom:
163
- secretKeyRef:
164
- key: email-domain
165
- name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
166
- - name: "CODER_OIDC_CLIENT_ID"
167
- valueFrom:
168
- secretKeyRef:
169
- key: client-id
170
- name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
171
- - name: "CODER_OIDC_CLIENT_SECRET"
172
- valueFrom:
173
- secretKeyRef:
174
- key: client-secret
175
- name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
175
+ # - name: "CODER_OIDC_ISSUER_URL"
176
+ # valueFrom:
177
+ # secretKeyRef:
178
+ # key: issuer-url
179
+ # name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
180
+ # - name: "CODER_OIDC_EMAIL_DOMAIN"
181
+ # valueFrom:
182
+ # secretKeyRef:
183
+ # key: email-domain
184
+ # name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
185
+ # - name: "CODER_OIDC_CLIENT_ID"
186
+ # valueFrom:
187
+ # secretKeyRef:
188
+ # key: client-id
189
+ # name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
190
+ # - name: "CODER_OIDC_CLIENT_SECRET"
191
+ # valueFrom:
192
+ # secretKeyRef:
193
+ # key: client-secret
194
+ # name: "${ data . kubernetes_secret . coder_oidc . metadata . 0 . name } "
176
195
# Send OTEL traces to the cluster-local collector to sample 10%
177
196
- name: "OTEL_EXPORTER_OTLP_ENDPOINT"
178
- value: "http://${ kubernetes_manifest . otel-collector . manifest . metadata . name } -collector.${ kubernetes_namespace . coder_namespace . metadata . 0 . name } .svc.cluster.local:4317"
197
+ value: "http://otel-collector.${ kubernetes_namespace . coder_namespace . metadata . 0 . name } .svc.cluster.local:4317"
179
198
- name: "OTEL_TRACES_SAMPLER"
180
199
value: parentbased_traceidratio
181
200
- name: "OTEL_TRACES_SAMPLER_ARG"
@@ -240,6 +259,8 @@ coder:
240
259
value: "${ local . coder_url } "
241
260
- name: "CODER_VERBOSE"
242
261
value: "true"
262
+ - name: "CODER_CONFIG_DIR"
263
+ value: "/tmp/config"
243
264
- name: "CODER_CACHE_DIRECTORY"
244
265
value: "/tmp/coder"
245
266
- name: "CODER_TELEMETRY_ENABLE"
@@ -251,7 +272,7 @@ coder:
251
272
- name: "CODER_PROMETHEUS_ENABLE"
252
273
value: "true"
253
274
- name: "CODER_PROVISIONERD_TAGS"
254
- value = "socpe =organization"
275
+ value: "scope =organization"
255
276
image:
256
277
repo: ${ var . provisionerd_image_repo }
257
278
tag: ${ var . provisionerd_image_tag }
0 commit comments