From c84b0cd754f0d62f919c49bcf23e43f72bd512d3 Mon Sep 17 00:00:00 2001 From: Thomas Blarre Date: Sun, 22 Dec 2024 09:54:12 +0100 Subject: [PATCH 1/6] Prepping to use the linode database for keycloak --- keycloak-argocd-apps/Chart.yaml | 2 +- .../templates/keycloak-deployment-app.yaml | 11 ++++++++++- .../templates/keycloak-requirements-app.yaml | 2 ++ keycloak-argocd-apps/values.yaml | 11 +++++++++++ keycloak-deployment/Chart.yaml | 2 +- .../templates/keycloak-deployment.yaml | 14 +++++++------- keycloak-deployment/values.yaml | 11 ++++++++++- 7 files changed, 42 insertions(+), 11 deletions(-) diff --git a/keycloak-argocd-apps/Chart.yaml b/keycloak-argocd-apps/Chart.yaml index 5769ff4..49cace2 100644 --- a/keycloak-argocd-apps/Chart.yaml +++ b/keycloak-argocd-apps/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: keycloak-argocd-apps description: A Helm chart for deploying the different argocd apps to deploy Keycloak type: application -version: 0.1.0 +version: 0.2.0 diff --git a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml index f2d32d1..2d45fd2 100644 --- a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml @@ -10,7 +10,7 @@ spec: project: {{ .Values.argocd.project }} source: repoURL: "https://git.blarre.net/thomas/helm-charts.git" - targetRevision: HEAD + targetRevision: {{ .Values.keycloakDeployment.targetRevision }} path: keycloak-deployment helm: releaseName: keycloak-deployment @@ -18,6 +18,15 @@ spec: keycloakDeployment: numInstances: {{ .Values.keycloakDeployment.numInstances }} hostname: {{ .Values.keycloakDeployment.hostname }} + vendor: {{ .Values.keycloakDeployment.vendor }} + dbHost: {{ .Values.keycloakDeployment.dbHost }} + usernameSecret: + name: {{ .Values.keycloakDeployment.usernameSecret.name }} + key: {{ .Values.keycloakDeployment.usernameSecret.key }} + passwordSecret: + name: {{ .Values.keycloakDeployment.passwordSecret.name }} + key: {{ .Values.keycloakDeployment.passwordSecret.key }} + database: {{ .Values.keycloakDeployment.database }} destination: server: {{ .Values.mainDestination }} namespace: {{ .Values.mainNamespace }} diff --git a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml index 22ca19a..57572a8 100644 --- a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml @@ -1,3 +1,4 @@ +{{- if .Values.dbCluster.enable -}} apiVersion: argoproj.io/v1alpha1 kind: Application metadata: @@ -29,3 +30,4 @@ spec: - ApplyOutOfSyncOnly=true - ServerSideApply=true - CreateNamespace=true +{{- end }} \ No newline at end of file diff --git a/keycloak-argocd-apps/values.yaml b/keycloak-argocd-apps/values.yaml index fbd58fb..ef2cac5 100644 --- a/keycloak-argocd-apps/values.yaml +++ b/keycloak-argocd-apps/values.yaml @@ -2,12 +2,23 @@ argocd: namespace: argocd project: default dbCluster: + enable: true size: 10Gi numInstances: 3 mainNamespace: keycloak mainDestination: https://kubernetes.default.svc keycloakDeployment: + targetRevision: HEAD numInstances: 1 hostname: sso.domain.net + vendor: postgres + dbHost: keycloak-db-rw + usernameSecret: + name: keycloak-db-app + key: user + passwordSecret: + name: keycloak-db-app + key: password + database: app tailscaleIngresses: keycloakHostname: sso \ No newline at end of file diff --git a/keycloak-deployment/Chart.yaml b/keycloak-deployment/Chart.yaml index 7e85ea2..16c43df 100644 --- a/keycloak-deployment/Chart.yaml +++ b/keycloak-deployment/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: keycloak-deployment description: A Helm chart for deploying the actual keycloak pod through the keycloak operator type: application -version: 0.1.0 \ No newline at end of file +version: 0.2.0 \ No newline at end of file diff --git a/keycloak-deployment/templates/keycloak-deployment.yaml b/keycloak-deployment/templates/keycloak-deployment.yaml index 0ff8ea5..bf14a7b 100644 --- a/keycloak-deployment/templates/keycloak-deployment.yaml +++ b/keycloak-deployment/templates/keycloak-deployment.yaml @@ -5,15 +5,15 @@ metadata: spec: instances: {{ .Values.keycloakDeployment.numInstances }} db: - vendor: postgres - host: keycloak-db-rw + vendor: {{ .Values.keycloakDeployment.vendor }} + host: {{ .Values.keycloakDeployment.dbHost }} usernameSecret: - name: keycloak-db-app - key: user + name: {{ .Values.keycloakDeployment.usernameSecret.name }} + key: {{ .Values.keycloakDeployment.usernameSecret.key }} passwordSecret: - name: keycloak-db-app - key: password - database: app + name: {{ .Values.keycloakDeployment.passwordSecret.name }} + key: {{ .Values.keycloakDeployment.passwordSecret.key }} + database: {{ .Values.keycloakDeployment.database }} ingress: enabled: false http: diff --git a/keycloak-deployment/values.yaml b/keycloak-deployment/values.yaml index 1311011..50a3036 100644 --- a/keycloak-deployment/values.yaml +++ b/keycloak-deployment/values.yaml @@ -1,3 +1,12 @@ keycloakDeployment: numInstances: 1 - hostname: sso.domain.net \ No newline at end of file + hostname: sso.domain.net + vendor: postgres + dbHost: keycloak-db-rw + usernameSecret: + name: keycloak-db-app + key: user + passwordSecret: + name: keycloak-db-app + key: password + database: app \ No newline at end of file -- 2.39.5 From 3bbb2f8240f86acc26c606ce262b38054d44fb89 Mon Sep 17 00:00:00 2001 From: Thomas Blarre Date: Mon, 23 Dec 2024 19:01:49 +0100 Subject: [PATCH 2/6] v2 suffix not to conflict with existing one --- keycloak-argocd-apps/templates/keycloak-deployment-app.yaml | 2 +- keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml | 2 +- keycloak-argocd-apps/templates/keycloak-requirements-app.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml index 2d45fd2..7e21ffa 100644 --- a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml @@ -1,7 +1,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-deployment + name: keycloak-deployment-v2 namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "0" diff --git a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml index 80c7180..7ab0dc3 100644 --- a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml @@ -1,7 +1,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-postinstall + name: keycloak-postinstall-v2 namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "1" diff --git a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml index 57572a8..cf4a456 100644 --- a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml @@ -2,7 +2,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-requirements + name: keycloak-requirements-v2 namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "-1" -- 2.39.5 From d72e29ff1666f132b9d7fd9b2607529227fbb437 Mon Sep 17 00:00:00 2001 From: Thomas Blarre Date: Mon, 23 Dec 2024 19:38:06 +0100 Subject: [PATCH 3/6] handle prefix --- keycloak-argocd-apps/Chart.yaml | 2 +- keycloak-argocd-apps/templates/keycloak-deployment-app.yaml | 4 +++- keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml | 3 ++- keycloak-argocd-apps/templates/keycloak-requirements-app.yaml | 3 ++- keycloak-argocd-apps/values.yaml | 1 + keycloak-deployment/Chart.yaml | 2 +- keycloak-deployment/templates/keycloak-deployment.yaml | 2 +- keycloak-deployment/values.yaml | 1 + keycloak-postinstall/templates/ts-ingress.yaml | 2 +- keycloak-postinstall/values.yaml | 1 + keycloak-requirements/Chart.yaml | 2 +- keycloak-requirements/templates/db-cluster.yaml | 2 +- keycloak-requirements/values.yaml | 4 ++-- 13 files changed, 18 insertions(+), 11 deletions(-) diff --git a/keycloak-argocd-apps/Chart.yaml b/keycloak-argocd-apps/Chart.yaml index 49cace2..10cd643 100644 --- a/keycloak-argocd-apps/Chart.yaml +++ b/keycloak-argocd-apps/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: keycloak-argocd-apps description: A Helm chart for deploying the different argocd apps to deploy Keycloak type: application -version: 0.2.0 +version: 0.2.1 diff --git a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml index 7e21ffa..35d8abf 100644 --- a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml @@ -1,7 +1,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-deployment-v2 + name: {{ .Values.argocd.prefix }}keycloak-deployment namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "0" @@ -15,7 +15,9 @@ spec: helm: releaseName: keycloak-deployment valuesObject: + prefix: {{ .Values.argocd.prefix }} keycloakDeployment: + deploymentName: {{ .Values.keycloakDeployment.deploymentName }} numInstances: {{ .Values.keycloakDeployment.numInstances }} hostname: {{ .Values.keycloakDeployment.hostname }} vendor: {{ .Values.keycloakDeployment.vendor }} diff --git a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml index 7ab0dc3..b3c7e74 100644 --- a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml @@ -1,7 +1,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-postinstall-v2 + name: {{ .Values.argocd.prefix }}keycloak-postinstall namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "1" @@ -15,6 +15,7 @@ spec: helm: releaseName: keycloak-postinstall valuesObject: + prefix: {{ .Values.argocd.prefix }} tailscaleIngresses: keycloakHostname: {{ .Values.tailscaleIngresses.keycloakHostname }} destination: diff --git a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml index cf4a456..abc60f7 100644 --- a/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-requirements-app.yaml @@ -2,7 +2,7 @@ apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - name: keycloak-requirements-v2 + name: {{ .Values.argocd.prefix }}keycloak-requirements namespace: {{ .Values.argocd.namespace }} annotations: argocd.argoproj.io/sync-wave: "-1" @@ -16,6 +16,7 @@ spec: helm: releaseName: keycloak-requirements valuesObject: + prefix: {{ .Values.argocd.prefix }} dbCluster: size: {{ .Values.dbCluster.size }} numInstances: {{ .Values.dbCluster.numInstances }} diff --git a/keycloak-argocd-apps/values.yaml b/keycloak-argocd-apps/values.yaml index ef2cac5..163ffb1 100644 --- a/keycloak-argocd-apps/values.yaml +++ b/keycloak-argocd-apps/values.yaml @@ -1,6 +1,7 @@ argocd: namespace: argocd project: default + prefix: null dbCluster: enable: true size: 10Gi diff --git a/keycloak-deployment/Chart.yaml b/keycloak-deployment/Chart.yaml index 16c43df..1f2fdbe 100644 --- a/keycloak-deployment/Chart.yaml +++ b/keycloak-deployment/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: keycloak-deployment description: A Helm chart for deploying the actual keycloak pod through the keycloak operator type: application -version: 0.2.0 \ No newline at end of file +version: 0.2.1 \ No newline at end of file diff --git a/keycloak-deployment/templates/keycloak-deployment.yaml b/keycloak-deployment/templates/keycloak-deployment.yaml index bf14a7b..7277d76 100644 --- a/keycloak-deployment/templates/keycloak-deployment.yaml +++ b/keycloak-deployment/templates/keycloak-deployment.yaml @@ -1,7 +1,7 @@ apiVersion: k8s.keycloak.org/v2alpha1 kind: Keycloak metadata: - name: linode-keycloak + name: {{ .Values.prefix }}keycloak spec: instances: {{ .Values.keycloakDeployment.numInstances }} db: diff --git a/keycloak-deployment/values.yaml b/keycloak-deployment/values.yaml index 50a3036..afc3ccb 100644 --- a/keycloak-deployment/values.yaml +++ b/keycloak-deployment/values.yaml @@ -1,3 +1,4 @@ +prefix: null keycloakDeployment: numInstances: 1 hostname: sso.domain.net diff --git a/keycloak-postinstall/templates/ts-ingress.yaml b/keycloak-postinstall/templates/ts-ingress.yaml index 49dd4f0..e90c222 100644 --- a/keycloak-postinstall/templates/ts-ingress.yaml +++ b/keycloak-postinstall/templates/ts-ingress.yaml @@ -1,7 +1,7 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: - name: ts-keycloak + name: {{ .Values.prefix }}ts-keycloak annotations: tailscale.com/funnel: "true" spec: diff --git a/keycloak-postinstall/values.yaml b/keycloak-postinstall/values.yaml index cb822e9..f3f03dc 100644 --- a/keycloak-postinstall/values.yaml +++ b/keycloak-postinstall/values.yaml @@ -1,2 +1,3 @@ +prefix: null tailscaleIngresses: keycloakHostname: sso \ No newline at end of file diff --git a/keycloak-requirements/Chart.yaml b/keycloak-requirements/Chart.yaml index 79d0200..3a23d0a 100644 --- a/keycloak-requirements/Chart.yaml +++ b/keycloak-requirements/Chart.yaml @@ -2,4 +2,4 @@ apiVersion: v2 name: keycloak-requirements description: A Helm chart for deploying the DB used by keycloak type: application -version: 0.1.0 +version: 0.1.1 diff --git a/keycloak-requirements/templates/db-cluster.yaml b/keycloak-requirements/templates/db-cluster.yaml index f0411d9..c500fb6 100644 --- a/keycloak-requirements/templates/db-cluster.yaml +++ b/keycloak-requirements/templates/db-cluster.yaml @@ -1,7 +1,7 @@ apiVersion: postgresql.cnpg.io/v1 kind: Cluster metadata: - name: keycloak-db + name: {{ .Values.prefix }}keycloak-db spec: instances: {{ .Values.dbCluster.numInstances }} diff --git a/keycloak-requirements/values.yaml b/keycloak-requirements/values.yaml index f9fc30a..1bf69b6 100644 --- a/keycloak-requirements/values.yaml +++ b/keycloak-requirements/values.yaml @@ -1,4 +1,4 @@ +prefix: null dbCluster: size: 1Gi - numInstances: 3 - + numInstances: 3 \ No newline at end of file -- 2.39.5 From 88e49484bb66cb8038d69fdc05be9e9e497df173 Mon Sep 17 00:00:00 2001 From: roukydesbois Date: Mon, 23 Dec 2024 20:29:37 +0100 Subject: [PATCH 4/6] forgot targetRevision --- keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml index b3c7e74..097c538 100644 --- a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml @@ -10,7 +10,7 @@ spec: project: {{ .Values.argocd.project }} source: repoURL: "https://git.blarre.net/thomas/helm-charts.git" - targetRevision: HEAD + targetRevision: {{ .Values.argocd.targetRevision }} path: keycloak-postinstall helm: releaseName: keycloak-postinstall -- 2.39.5 From 854f936c135385ef14d84b2b0032c0ab7540ec2f Mon Sep 17 00:00:00 2001 From: Thomas Blarre Date: Mon, 23 Dec 2024 21:07:11 +0100 Subject: [PATCH 5/6] bad value --- keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml index 097c538..57ca80a 100644 --- a/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-postinstall-app.yaml @@ -10,7 +10,7 @@ spec: project: {{ .Values.argocd.project }} source: repoURL: "https://git.blarre.net/thomas/helm-charts.git" - targetRevision: {{ .Values.argocd.targetRevision }} + targetRevision: {{ .Values.keycloakDeployment.targetRevision }} path: keycloak-postinstall helm: releaseName: keycloak-postinstall -- 2.39.5 From d11b156f15ead8f1d1a8b60f820ec47a251902ca Mon Sep 17 00:00:00 2001 From: Thomas Blarre Date: Thu, 26 Dec 2024 10:58:30 +0100 Subject: [PATCH 6/6] adding db port --- keycloak-argocd-apps/templates/keycloak-deployment-app.yaml | 1 + keycloak-argocd-apps/values.yaml | 1 + keycloak-deployment/templates/keycloak-deployment.yaml | 1 + keycloak-deployment/values.yaml | 1 + 4 files changed, 4 insertions(+) diff --git a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml index 35d8abf..a44d171 100644 --- a/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml +++ b/keycloak-argocd-apps/templates/keycloak-deployment-app.yaml @@ -22,6 +22,7 @@ spec: hostname: {{ .Values.keycloakDeployment.hostname }} vendor: {{ .Values.keycloakDeployment.vendor }} dbHost: {{ .Values.keycloakDeployment.dbHost }} + dbPort: {{ .Values.keycloakDeployment.dbPort }} usernameSecret: name: {{ .Values.keycloakDeployment.usernameSecret.name }} key: {{ .Values.keycloakDeployment.usernameSecret.key }} diff --git a/keycloak-argocd-apps/values.yaml b/keycloak-argocd-apps/values.yaml index 163ffb1..7c52000 100644 --- a/keycloak-argocd-apps/values.yaml +++ b/keycloak-argocd-apps/values.yaml @@ -14,6 +14,7 @@ keycloakDeployment: hostname: sso.domain.net vendor: postgres dbHost: keycloak-db-rw + dbPort: 5432 usernameSecret: name: keycloak-db-app key: user diff --git a/keycloak-deployment/templates/keycloak-deployment.yaml b/keycloak-deployment/templates/keycloak-deployment.yaml index 7277d76..10b3c76 100644 --- a/keycloak-deployment/templates/keycloak-deployment.yaml +++ b/keycloak-deployment/templates/keycloak-deployment.yaml @@ -7,6 +7,7 @@ spec: db: vendor: {{ .Values.keycloakDeployment.vendor }} host: {{ .Values.keycloakDeployment.dbHost }} + port: {{ .Values.keycloakDeployment.dbPort }} usernameSecret: name: {{ .Values.keycloakDeployment.usernameSecret.name }} key: {{ .Values.keycloakDeployment.usernameSecret.key }} diff --git a/keycloak-deployment/values.yaml b/keycloak-deployment/values.yaml index afc3ccb..7227556 100644 --- a/keycloak-deployment/values.yaml +++ b/keycloak-deployment/values.yaml @@ -4,6 +4,7 @@ keycloakDeployment: hostname: sso.domain.net vendor: postgres dbHost: keycloak-db-rw + dbPort: 5432 usernameSecret: name: keycloak-db-app key: user -- 2.39.5