Commit 9b9251a7 authored by Dimitrios Gogos's avatar Dimitrios Gogos
Browse files

feat: update Keycloak and PostgreSQL configurations by removing hardcoded values

parent 53f4d1f6
Loading
Loading
Loading
Loading
+0 −3
Changes for environments/kind/values.yaml: 0 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -121,9 +121,6 @@ ai2:
portal:
  image:
    pullPolicy: IfNotPresent
  service:
    type: NodePort
    nodePort: 30082


databus:
+10 −6
Changes for oop-platform-chart/charts/federation-manager/README.md: 10 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -63,13 +63,17 @@ extra configuration.
federationManager:
  config:
    keycloak:
      client1_id: "originating-op-1"
      client1_secret: "dd7vNwFqjNpYwaghlEwMbw10g0klWDHb"
      client2_id: "originating-op-2"
      client2_secret: "2mhznERfWclLDuVojY77Lp4Qd2r4e8Ms"
      client1_id: ""            # empty = global.federation.clients[0]
      client2_id: ""            # empty = global.federation.clients[1]
      # Secret holding both client secrets. The umbrella chart points this at
      # keycloak-credentials, where the keycloak chart generates them
      # (keys federation-<client id>-secret).
      existingSecret: ""
      client1_secret: ""        # only used without existingSecret
      client2_secret: ""
      scope: "fed-mgmt"
      host: "keycloak"          # where Federation Manager reaches Keycloak
      port: "8080"
      host: ""                  # empty = global.keycloak.host, else keycloak
      port: ""                  # empty = global.keycloak.port, else 8080
      realm: "federation"
      # Issuer Keycloak puts in tokens (`iss`), also the token URL the Swagger UI shows.
      # Empty = discovered from Keycloak; set it only to override that.
+54 −0
Changes for oop-platform-chart/charts/federation-manager/templates/_helpers.tpl: 54 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -51,6 +51,60 @@ app.kubernetes.io/name: {{ include "federation-manager.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

{{/*
Keycloak settings: this chart's own value when set, else the umbrella chart's `global` block,
else a built-in default, so the chart also installs on its own.
*/}}
{{- define "federation-manager.keycloak.host" -}}
{{- .Values.federationManager.config.keycloak.host | default (dig "keycloak" "host" "keycloak" (.Values.global | default dict)) -}}
{{- end }}

{{- define "federation-manager.keycloak.port" -}}
{{- .Values.federationManager.config.keycloak.port | default (dig "keycloak" "port" 8080 (.Values.global | default dict)) -}}
{{- end }}

{{- define "federation-manager.client1Id" -}}
{{- $clients := dig "federation" "clients" (list) (.Values.global | default dict) -}}
{{- .Values.federationManager.config.keycloak.client1_id | default (first $clients) | default "" -}}
{{- end }}

{{- define "federation-manager.client2Id" -}}
{{- $clients := dig "federation" "clients" (list) (.Values.global | default dict) -}}
{{- if .Values.federationManager.config.keycloak.client2_id -}}
{{- .Values.federationManager.config.keycloak.client2_id -}}
{{- else if gt (len $clients) 1 -}}
{{- index $clients 1 -}}
{{- end -}}
{{- end }}

{{/*
Secret holding the client secrets: `existingSecret` (e.g. keycloak-credentials, filled by the
keycloak chart, keys federation-<client id>-secret) or this chart's own Secret.
*/}}
{{- define "federation-manager.clientSecretName" -}}
{{- .Values.federationManager.config.keycloak.existingSecret | default "federation-manager-secrets" -}}
{{- end }}

{{- define "federation-manager.client1SecretKey" -}}
{{- with .Values.federationManager.config.keycloak -}}
{{- if .existingSecret -}}
{{- .client1SecretKey | default (printf "federation-%s-secret" (include "federation-manager.client1Id" $)) -}}
{{- else -}}
client1_secret
{{- end -}}
{{- end -}}
{{- end }}

{{- define "federation-manager.client2SecretKey" -}}
{{- with .Values.federationManager.config.keycloak -}}
{{- if .existingSecret -}}
{{- .client2SecretKey | default (printf "federation-%s-secret" (include "federation-manager.client2Id" $)) -}}
{{- else -}}
client2_secret
{{- end -}}
{{- end -}}
{{- end }}

{{/*
Federation Manager labels
*/}}
+4 −4
Changes for oop-platform-chart/charts/federation-manager/templates/federation-manager-configmap.yaml: 4 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -13,13 +13,13 @@ metadata:
data:
  config.cfg: |
    [keycloak]
    client1_id = {{ .Values.federationManager.config.keycloak.client1_id }}
    client1_id = {{ include "federation-manager.client1Id" . }}
    client1_secret = ${CLIENT1_SECRET}
    client2_id = {{ .Values.federationManager.config.keycloak.client2_id }}
    client2_id = {{ include "federation-manager.client2Id" . }}
    client2_secret = ${CLIENT2_SECRET}
    scope = {{ .Values.federationManager.config.keycloak.scope }}
    host = {{ .Values.federationManager.config.keycloak.host }}
    port = {{ .Values.federationManager.config.keycloak.port }}
    host = {{ include "federation-manager.keycloak.host" . }}
    port = {{ include "federation-manager.keycloak.port" . }}
    realm = {{ .Values.federationManager.config.keycloak.realm }}
    issuer = {{ .Values.federationManager.config.keycloak.issuer }}

+4 −4
Changes for oop-platform-chart/charts/federation-manager/templates/federation-manager-deployment.yaml: 4 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -40,13 +40,13 @@ spec:
            - name: CLIENT1_SECRET
              valueFrom:
                secretKeyRef:
                  name: federation-manager-secrets
                  key: client1_secret
                  name: {{ include "federation-manager.clientSecretName" . }}
                  key: {{ include "federation-manager.client1SecretKey" . }}
            - name: CLIENT2_SECRET
              valueFrom:
                secretKeyRef:
                  name: federation-manager-secrets
                  key: client2_secret
                  name: {{ include "federation-manager.clientSecretName" . }}
                  key: {{ include "federation-manager.client2SecretKey" . }}
          volumeMounts:
            - name: configmap
              mountPath: /configmap
Loading