Skip to content

Commit d876ded

Browse files
authored
Merge pull request #8 from smarunich/dev
adding 1.22 related updates
2 parents 1484060 + 200dcda commit d876ded

File tree

10 files changed

+52
-57
lines changed

10 files changed

+52
-57
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Local .terraform directories
22
**/.terraform/*
3+
tests/*
34

45
# .tfstate files
56
*.tfstate

Makefile

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,11 @@ azure_k8s:
1515
terraform apply -auto-approve -target=module.azure_k8s
1616
tsb_deps:
1717
terraform init
18-
terraform apply -auto-approve -target=module.cert-manager
18+
terraform apply -auto-approve -target=module.cert-manager -var=cluster_id=0
1919
terraform apply -auto-approve -target=module.es
2020
tsb_mp:
2121
terraform init
22+
terraform apply -auto-approve -target=module.tsb_mp.kubectl_manifest.manifests_certs
2223
terraform apply -auto-approve -target=module.tsb_mp
2324
terraform apply -auto-approve -target=module.aws_dns
2425
tsb_fqdn:
@@ -27,6 +28,8 @@ tsb_cp:
2728
@echo cluster_id is ${cluster_id}
2829
@echo cloud is ${cloud}
2930
terraform init
31+
terraform state list | grep "^module.cert-manager" | grep -v data | tr -d ':' | xargs -I '{}' terraform taint {}
32+
terraform apply -auto-approve -target=module.cert-manager -var=cluster_id=${cluster_id}
3033
terraform taint -allow-missing "module.tsb_cp.null_resource.jumpbox_tctl"
3134
terraform apply -auto-approve -target=module.tsb_cp -var=cluster_id=${cluster_id} -var=cloud=${cloud}
3235
argocd:
@@ -39,7 +42,7 @@ app_bookinfo:
3942
@echo cluster_id is ${cluster_id}
4043
@echo cloud is ${cloud}
4144
terraform init
42-
terraform taint -allow-missing "module.app_bookinfo"
45+
terraform state list | grep "^module.app_bookinfo" | grep -v data | tr -d ':' | xargs -I '{}' terraform taint {}
4346
terraform apply -auto-approve -target=module.app_bookinfo -var=cluster_id=${cluster_id} -var=cloud=${cloud}
4447
azure_oidc:
4548
terraform init

main.tf

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,10 @@ module "aws_k8s" {
6464

6565
module "cert-manager" {
6666
source = "./modules/addons/cert-manager"
67-
k8s_host = module.azure_k8s.0.host
68-
k8s_cluster_ca_certificate = module.azure_k8s.0.cluster_ca_certificate
69-
k8s_client_certificate = module.azure_k8s.0.client_certificate
70-
k8s_client_key = module.azure_k8s.0.client_key
71-
tsb_fqdn = var.tsb_fqdn
67+
k8s_host = element(module.azure_k8s, var.cluster_id).host
68+
k8s_cluster_ca_certificate = element(module.azure_k8s, var.cluster_id).cluster_ca_certificate
69+
k8s_client_certificate = element(module.azure_k8s, var.cluster_id).client_certificate
70+
k8s_client_key = element(module.azure_k8s, var.cluster_id).client_key
7271
}
7372

7473
module "es" {

modules/addons/cert-manager/main.tf

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,16 @@ resource "helm_release" "cert_manager" {
2727
version = "1.7.2"
2828
create_namespace = true
2929
namespace = "cert-manager"
30+
timeout = 900
3031

3132
set {
3233
name = "installCRDs"
3334
value = "true"
3435
}
35-
36+
set {
37+
name = "featureGates"
38+
value = "ExperimentalCertificateSigningRequestControllers=true"
39+
}
3640
}
3741

3842
resource "time_sleep" "wait_90_seconds" {
@@ -51,16 +55,4 @@ resource "kubectl_manifest" "manifests_selfsigned_ca" {
5155
depends_on = [time_sleep.wait_90_seconds]
5256
}
5357

54-
data "kubectl_path_documents" "manifests_certs" {
55-
pattern = "${path.module}/manifests/certs.yaml.tmpl"
56-
vars = {
57-
tsb_fqdn = var.tsb_fqdn
58-
}
59-
}
60-
61-
resource "kubectl_manifest" "manifests_certs" {
62-
count = length(data.kubectl_path_documents.manifests_certs.documents)
63-
yaml_body = element(data.kubectl_path_documents.manifests_certs.documents, count.index)
64-
depends_on = [time_sleep.wait_90_seconds]
65-
}
6658

modules/addons/cert-manager/variables.tf

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,3 @@ variable "k8s_client_key" {
99

1010
variable "k8s_cluster_ca_certificate" {
1111
}
12-
13-
variable "tsb_fqdn" {
14-
}

modules/azure/k8s/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ resource "azurerm_kubernetes_cluster" "k8s" {
55

66
dns_prefix = var.cluster_name
77

8-
kubernetes_version = "1.21.9"
8+
kubernetes_version = "1.22.6"
99
sku_tier = "Free"
1010
private_cluster_enabled = false
1111

modules/tsb/cp/manifests/tsb/controlplane-values.yaml.tmpl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,7 @@ spec:
2828
gitops:
2929
enabled: true
3030
reconcileInterval: 600s
31-
meshExpansion: {}
32-
31+
internalCertProvider:
32+
certManager:
33+
managed: EXTERNAL
34+
meshExpansion: {}

modules/tsb/mp/main.tf

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,22 @@ provider "kubernetes" {
2222
client_key = base64decode(var.k8s_client_key)
2323
}
2424

25+
resource "time_sleep" "warmup_90_seconds" {
26+
create_duration = "90s"
27+
}
28+
29+
data "kubectl_path_documents" "manifests_certs" {
30+
pattern = "${path.module}/manifests/cert-manager/certs.yaml.tmpl"
31+
vars = {
32+
tsb_fqdn = var.tsb_fqdn
33+
}
34+
}
35+
36+
resource "kubectl_manifest" "manifests_certs" {
37+
count = length(data.kubectl_path_documents.manifests_certs.documents)
38+
yaml_body = element(data.kubectl_path_documents.manifests_certs.documents, count.index)
39+
}
40+
2541
resource "kubernetes_namespace" "tsb" {
2642
metadata {
2743
name = "tsb"
@@ -35,20 +51,23 @@ data "kubernetes_secret" "selfsigned_ca" {
3551
name = "selfsigned-ca"
3652
namespace = "cert-manager"
3753
}
54+
depends_on = [time_sleep.warmup_90_seconds]
3855
}
3956

4057
data "kubernetes_secret" "tsb_server_cert" {
4158
metadata {
4259
name = "tsb-server-cert"
4360
namespace = "cert-manager"
4461
}
62+
depends_on = [time_sleep.warmup_90_seconds]
4563
}
4664

4765
data "kubernetes_secret" "istiod_cacerts" {
4866
metadata {
4967
name = "istiod-cacerts"
5068
namespace = "cert-manager"
5169
}
70+
depends_on = [time_sleep.warmup_90_seconds]
5271
}
5372
data "kubernetes_secret" "es_password" {
5473
metadata {
@@ -133,38 +152,15 @@ resource "helm_release" "managementplane" {
133152

134153
}
135154

136-
resource "time_sleep" "wait_90_seconds" {
155+
resource "time_sleep" "wait_180_seconds" {
137156
depends_on = [helm_release.managementplane]
138-
create_duration = "90s"
139-
}
140-
141-
resource "null_resource" "jumpbox_kubectl" {
142-
connection {
143-
host = var.jumpbox_host
144-
type = "ssh"
145-
agent = false
146-
user = var.jumpbox_username
147-
private_key = var.jumpbox_pkey
148-
}
149-
150-
provisioner "file" {
151-
source = "${var.cluster_name}-kubeconfig"
152-
destination = "${var.cluster_name}-kubeconfig"
153-
}
154-
provisioner "remote-exec" {
155-
156-
inline = [
157-
"kubectl --kubeconfig ${var.cluster_name}-kubeconfig create job -n tsb teamsync-bootstrap --from=cronjob/teamsync"
158-
]
159-
}
160-
161-
depends_on = [time_sleep.wait_90_seconds]
157+
create_duration = "180s"
162158
}
163159

164160
data "kubernetes_service" "tsb" {
165161
metadata {
166162
name = "envoy"
167163
namespace = "tsb"
168164
}
169-
depends_on = [time_sleep.wait_90_seconds]
165+
depends_on = [time_sleep.wait_180_seconds]
170166
}

modules/tsb/mp/manifests/tsb/managementplane-values.yaml.tmpl

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ secrets:
55
tsb:
66
adminPassword: ${tsb_password}
77
xcp:
8-
authModes:
9-
jwt: true
10-
mtls: false
118
autoGenerateCerts: true
129
central:
1310
additionalDNSNames:
@@ -18,7 +15,7 @@ secrets:
1815
ldap:
1916
binddn: ${ldap_binddn}
2017
bindpassword: ${ldap_bindpassword}
21-
postgres:
18+
postgres:
2219
username: ${db_username}
2320
password: ${db_password}
2421
spec:
@@ -30,4 +27,12 @@ spec:
3027
port: 9200
3128
version: 7
3229
selfSigned: true
33-
protocol: https
30+
protocol: https
31+
components:
32+
xcp:
33+
centralAuthModes:
34+
jwt: true
35+
internalCertProvider:
36+
certManager:
37+
managed: EXTERNAL
38+

0 commit comments

Comments
 (0)