@@ -43,6 +43,23 @@ resource "kubernetes_secret" "proxy_token_europe" {
43
43
}
44
44
}
45
45
46
+ resource "kubernetes_secret" "coder_tls_europe" {
47
+ provider = kubernetes. europe
48
+
49
+ type = " kubernetes.io/tls"
50
+ metadata {
51
+ name = " coder-tls"
52
+ namespace = kubernetes_namespace. coder_europe . metadata . 0 . name
53
+ }
54
+ data = {
55
+ " tls.crt" = data.kubernetes_secret.coder_tls[" europe" ].data[" tls.crt" ]
56
+ " tls.key" = data.kubernetes_secret.coder_tls[" europe" ].data[" tls.key" ]
57
+ }
58
+ lifecycle {
59
+ ignore_changes = [timeouts ,wait_for_service_account_token ]
60
+ }
61
+ }
62
+
46
63
resource "helm_release" "coder_europe" {
47
64
provider = helm. europe
48
65
@@ -52,25 +69,27 @@ resource "helm_release" "coder_europe" {
52
69
version = var. coder_chart_version
53
70
namespace = kubernetes_namespace. coder_europe . metadata . 0 . name
54
71
values = [templatefile (" ${ path . module } /coder_helm_values.tftpl" , {
55
- workspace_proxy= true ,
56
- provisionerd= false ,
57
- primary_url= local.deployments.primary.url,
58
- proxy_token= kubernetes_secret.proxy_token_europe.metadata.0 .name,
59
- db_secret= null ,
60
- ip_address= google_compute_address.coder[" europe" ].address,
61
- provisionerd_psk= null ,
62
- access_url= local.deployments.europe.url,
63
- node_pool= google_container_node_pool.node_pool[" europe_coder" ].name,
64
- release_name= local.coder_release_name,
65
- experiments= var.coder_experiments,
66
- image_repo= var.coder_image_repo,
67
- image_tag= var.coder_image_tag,
68
- replicas= local.scenarios[var.scenario].coder.replicas,
69
- cpu_request= local.scenarios[var.scenario].coder.cpu_request,
70
- mem_request= local.scenarios[var.scenario].coder.mem_request,
71
- cpu_limit= local.scenarios[var.scenario].coder.cpu_limit,
72
- mem_limit= local.scenarios[var.scenario].coder.mem_limit,
73
- deployment= " europe" ,
72
+ workspace_proxy= true ,
73
+ provisionerd= false ,
74
+ primary_url= local.deployments.primary.url,
75
+ proxy_token= kubernetes_secret.proxy_token_europe.metadata.0 .name,
76
+ db_secret= null ,
77
+ ip_address= google_compute_address.coder[" europe" ].address,
78
+ provisionerd_psk= null ,
79
+ access_url= local.deployments.europe.url,
80
+ wildcard_access_url= local.deployments.europe.wildcard_access_url,
81
+ node_pool= google_container_node_pool.node_pool[" europe_coder" ].name,
82
+ release_name= local.coder_release_name,
83
+ experiments= var.coder_experiments,
84
+ image_repo= var.coder_image_repo,
85
+ image_tag= var.coder_image_tag,
86
+ replicas= local.scenarios[var.scenario].coder.replicas,
87
+ cpu_request= local.scenarios[var.scenario].coder.cpu_request,
88
+ mem_request= local.scenarios[var.scenario].coder.mem_request,
89
+ cpu_limit= local.scenarios[var.scenario].coder.cpu_limit,
90
+ mem_limit= local.scenarios[var.scenario].coder.mem_limit,
91
+ deployment= " europe" ,
92
+ tls_secret_name= kubernetes_secret.coder_tls_europe.metadata.0 .name,
74
93
})]
75
94
76
95
depends_on = [null_resource. license ]
@@ -85,25 +104,27 @@ resource "helm_release" "provisionerd_europe" {
85
104
version = var. provisionerd_chart_version
86
105
namespace = kubernetes_namespace. coder_europe . metadata . 0 . name
87
106
values = [templatefile (" ${ path . module } /coder_helm_values.tftpl" , {
88
- workspace_proxy= false ,
89
- provisionerd= true ,
90
- primary_url= null ,
91
- proxy_token= null ,
92
- db_secret= null ,
93
- ip_address= null ,
94
- provisionerd_psk= kubernetes_secret.provisionerd_psk_europe.metadata.0 .name,
95
- access_url= local.deployments.primary.url,
96
- node_pool= google_container_node_pool.node_pool[" europe_coder" ].name,
97
- release_name= local.coder_release_name,
98
- experiments= var.coder_experiments,
99
- image_repo= var.coder_image_repo,
100
- image_tag= var.coder_image_tag,
101
- replicas= local.scenarios[var.scenario].provisionerd.replicas,
102
- cpu_request= local.scenarios[var.scenario].provisionerd.cpu_request,
103
- mem_request= local.scenarios[var.scenario].provisionerd.mem_request,
104
- cpu_limit= local.scenarios[var.scenario].provisionerd.cpu_limit,
105
- mem_limit= local.scenarios[var.scenario].provisionerd.mem_limit,
106
- deployment= " europe" ,
107
+ workspace_proxy= false ,
108
+ provisionerd= true ,
109
+ primary_url= null ,
110
+ proxy_token= null ,
111
+ db_secret= null ,
112
+ ip_address= null ,
113
+ provisionerd_psk= kubernetes_secret.provisionerd_psk_europe.metadata.0 .name,
114
+ access_url= local.deployments.primary.url,
115
+ wildcard_access_url= null ,
116
+ node_pool= google_container_node_pool.node_pool[" europe_coder" ].name,
117
+ release_name= local.coder_release_name,
118
+ experiments= var.coder_experiments,
119
+ image_repo= var.coder_image_repo,
120
+ image_tag= var.coder_image_tag,
121
+ replicas= local.scenarios[var.scenario].provisionerd.replicas,
122
+ cpu_request= local.scenarios[var.scenario].provisionerd.cpu_request,
123
+ mem_request= local.scenarios[var.scenario].provisionerd.mem_request,
124
+ cpu_limit= local.scenarios[var.scenario].provisionerd.cpu_limit,
125
+ mem_limit= local.scenarios[var.scenario].provisionerd.mem_limit,
126
+ deployment= " europe" ,
127
+ tls_secret_name= null ,
107
128
})]
108
129
109
130
depends_on = [null_resource. license ]