From 1fd3278c50b51ebf6b3636a307e850988cbe12f9 Mon Sep 17 00:00:00 2001 From: Angel Kafazov Date: Thu, 5 Dec 2024 12:04:44 +0200 Subject: [PATCH] chore (charts): move keycloak chart (#44) --- .github/workflows/helm-docs.yaml | 23 ++ .github/workflows/keycloak.yaml | 28 ++ charts/account-operator-crds/Chart.yaml | 2 +- charts/account-operator-crds/README.md | 27 +- charts/account-operator-crds/README.md.gotmpl | 33 ++ charts/account-operator/Chart.lock | 8 +- charts/account-operator/Chart.yaml | 6 +- charts/account-operator/README.md | 31 +- charts/account-operator/README.md.gotmpl | 33 ++ .../charts/account-operator-crds-0.1.6.tgz | Bin 5346 -> 5346 bytes .../account-operator/charts/common-0.1.5.tgz | Bin 4512 -> 4519 bytes charts/common/Chart.yaml | 2 +- charts/common/README.md | 4 +- .../common/test-chart/charts/common-0.1.5.tgz | Bin 4514 -> 4585 bytes charts/example-content/Chart.lock | 6 +- charts/example-content/Chart.yaml | 4 +- charts/example-content/README.MD | 21 -- charts/example-content/README.md | 29 +- charts/example-content/README.md.gotmpl | 33 ++ .../example-content/charts/common-0.1.5.tgz | Bin 4513 -> 4519 bytes .../Chart.yaml | 2 +- .../extension-manager-operator-crds/README.md | 32 +- .../README.md.gotmpl | 33 ++ charts/extension-manager-operator/Chart.lock | 8 +- charts/extension-manager-operator/Chart.yaml | 6 +- charts/extension-manager-operator/README.md | 31 +- .../README.md.gotmpl | 33 ++ .../charts/common-0.1.5.tgz | Bin 4513 -> 4519 bytes .../extension-manager-operator-crds-0.1.3.tgz | Bin 3513 -> 3513 bytes charts/infra/.helmignore | 23 ++ charts/infra/Chart.lock | 6 + charts/infra/Chart.yaml | 11 + charts/infra/README.md | 56 ++++ charts/infra/README.md.gotmpl | 33 ++ charts/infra/charts/common-0.1.5.tgz | Bin 0 -> 4519 bytes charts/infra/templates/cluster-role.yaml | 30 ++ .../external-secret-account-operator.yaml | 22 ++ charts/infra/templates/gateway.yaml | 14 + charts/infra/templates/kcp-service-entry.yaml | 16 + .../templates/keycloak-service-entry.yaml | 15 + charts/infra/templates/store.yaml | 13 + charts/infra/test-values.yaml | 36 ++ .../__snapshot__/snapshot_test.yaml.snap | 76 +++++ charts/infra/tests/snapshot_test.yaml | 14 + charts/infra/values.yaml | 37 +++ charts/keycloak/.helmignore | 23 ++ charts/keycloak/Chart.lock | 9 + charts/keycloak/Chart.yaml | 33 ++ charts/keycloak/README.md | 61 ++++ charts/keycloak/README.md.gotmpl | 33 ++ charts/keycloak/charts/common-0.1.5.tgz | Bin 0 -> 4519 bytes charts/keycloak/charts/keycloak-24.2.2.tgz | Bin 0 -> 139244 bytes .../keycloak/templates/crossplane/client.yaml | 45 +++ .../crossplane/external-secrets.yaml | 54 +++ .../keycloak/templates/crossplane/group.yaml | 61 ++++ .../crossplane/identity-provider.yaml | 59 ++++ .../templates/crossplane/provider-config.yaml | 31 ++ .../keycloak/templates/crossplane/realm.yaml | 20 ++ .../keycloak/templates/external-secrets.yaml | 45 +++ .../templates/istio-virtualservice.yaml | 29 ++ .../templates/job-keycloak-configuration.yaml | 305 +++++++++++++++++ charts/keycloak/templates/rbac.yaml | 26 ++ charts/keycloak/templates/sa.yaml | 5 + charts/keycloak/test-values.yaml | 9 + .../__snapshot__/crossplane_test.yaml.snap | 201 ++++++++++++ .../external-secrets_test.yaml.snap | 43 +++ .../tests/__snapshot__/istio_test.yaml.snap | 37 +++ .../tests/__snapshot__/job_test.yaml.snap | 309 ++++++++++++++++++ .../tests/__snapshot__/rbac_test.yaml.snap | 28 ++ charts/keycloak/tests/crossplane_test.yaml | 15 + .../keycloak/tests/external-secrets_test.yaml | 11 + charts/keycloak/tests/istio_test.yaml | 25 ++ charts/keycloak/tests/job_test.yaml | 16 + charts/keycloak/tests/rbac_test.yaml | 11 + charts/keycloak/values.yaml | 110 +++++++ charts/openmfp-crds/Chart.yaml | 2 +- charts/openmfp-crds/README.md | 29 +- charts/openmfp-crds/README.md.gotmpl | 33 ++ charts/openmfp/Chart.yaml | 2 +- charts/openmfp/README.md | 29 +- charts/openmfp/README.md.gotmpl | 33 ++ charts/portal/Chart.lock | 6 +- charts/portal/Chart.yaml | 4 +- charts/portal/README.md | 27 +- charts/portal/README.md.gotmpl | 33 ++ charts/portal/charts/common-0.1.5.tgz | Bin 4511 -> 4519 bytes 86 files changed, 2613 insertions(+), 76 deletions(-) create mode 100644 .github/workflows/helm-docs.yaml create mode 100644 .github/workflows/keycloak.yaml create mode 100644 charts/account-operator-crds/README.md.gotmpl create mode 100644 charts/account-operator/README.md.gotmpl delete mode 100644 charts/example-content/README.MD create mode 100644 charts/example-content/README.md.gotmpl create mode 100644 charts/extension-manager-operator-crds/README.md.gotmpl create mode 100644 charts/extension-manager-operator/README.md.gotmpl create mode 100644 charts/infra/.helmignore create mode 100644 charts/infra/Chart.lock create mode 100644 charts/infra/Chart.yaml create mode 100644 charts/infra/README.md create mode 100644 charts/infra/README.md.gotmpl create mode 100644 charts/infra/charts/common-0.1.5.tgz create mode 100644 charts/infra/templates/cluster-role.yaml create mode 100644 charts/infra/templates/external-secret-account-operator.yaml create mode 100644 charts/infra/templates/gateway.yaml create mode 100644 charts/infra/templates/kcp-service-entry.yaml create mode 100644 charts/infra/templates/keycloak-service-entry.yaml create mode 100644 charts/infra/templates/store.yaml create mode 100644 charts/infra/test-values.yaml create mode 100644 charts/infra/tests/__snapshot__/snapshot_test.yaml.snap create mode 100644 charts/infra/tests/snapshot_test.yaml create mode 100644 charts/infra/values.yaml create mode 100644 charts/keycloak/.helmignore create mode 100644 charts/keycloak/Chart.lock create mode 100644 charts/keycloak/Chart.yaml create mode 100644 charts/keycloak/README.md create mode 100644 charts/keycloak/README.md.gotmpl create mode 100644 charts/keycloak/charts/common-0.1.5.tgz create mode 100644 charts/keycloak/charts/keycloak-24.2.2.tgz create mode 100644 charts/keycloak/templates/crossplane/client.yaml create mode 100644 charts/keycloak/templates/crossplane/external-secrets.yaml create mode 100644 charts/keycloak/templates/crossplane/group.yaml create mode 100644 charts/keycloak/templates/crossplane/identity-provider.yaml create mode 100644 charts/keycloak/templates/crossplane/provider-config.yaml create mode 100644 charts/keycloak/templates/crossplane/realm.yaml create mode 100644 charts/keycloak/templates/external-secrets.yaml create mode 100644 charts/keycloak/templates/istio-virtualservice.yaml create mode 100644 charts/keycloak/templates/job-keycloak-configuration.yaml create mode 100644 charts/keycloak/templates/rbac.yaml create mode 100644 charts/keycloak/templates/sa.yaml create mode 100644 charts/keycloak/test-values.yaml create mode 100644 charts/keycloak/tests/__snapshot__/crossplane_test.yaml.snap create mode 100644 charts/keycloak/tests/__snapshot__/external-secrets_test.yaml.snap create mode 100644 charts/keycloak/tests/__snapshot__/istio_test.yaml.snap create mode 100644 charts/keycloak/tests/__snapshot__/job_test.yaml.snap create mode 100644 charts/keycloak/tests/__snapshot__/rbac_test.yaml.snap create mode 100644 charts/keycloak/tests/crossplane_test.yaml create mode 100644 charts/keycloak/tests/external-secrets_test.yaml create mode 100644 charts/keycloak/tests/istio_test.yaml create mode 100644 charts/keycloak/tests/job_test.yaml create mode 100644 charts/keycloak/tests/rbac_test.yaml create mode 100644 charts/keycloak/values.yaml create mode 100644 charts/openmfp-crds/README.md.gotmpl create mode 100644 charts/openmfp/README.md.gotmpl create mode 100644 charts/portal/README.md.gotmpl diff --git a/.github/workflows/helm-docs.yaml b/.github/workflows/helm-docs.yaml new file mode 100644 index 000000000..352c7bf57 --- /dev/null +++ b/.github/workflows/helm-docs.yaml @@ -0,0 +1,23 @@ +name: Verify Helm Docs up-to-date +on: + push: + branches: + - main + +jobs: + generate: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.ref }} + - name: Run helm-docs + uses: losisin/helm-docs-github-action@v1 + with: + fail-on-diff: false + chart-search-root: charts/ + template-files: README.md.gotmpl + git-push: true + git-push-user-name: "openmfp-technical-user" + git-push-user-email: "openmfp@gmail.com" + git-commit-message: "chore: update Helm documentation" \ No newline at end of file diff --git a/.github/workflows/keycloak.yaml b/.github/workflows/keycloak.yaml new file mode 100644 index 000000000..7acef9401 --- /dev/null +++ b/.github/workflows/keycloak.yaml @@ -0,0 +1,28 @@ +name: Build Keycloak +on: + push: + paths: + - 'charts/keycloak/**' + - '.github/workflows/keycloak.yaml' + +jobs: + pipeline: + concurrency: + group: keycloak-${{ github.ref }} + cancel-in-progress: true + uses: openmfp/gha/.github/workflows/pipeline-chart.yml@main + with: + chartFolder: charts + chartName: keycloak + additionalTestFilesCommand: '' + chartRepos: 'bitnami=https://charts.bitnami.com/bitnami,openfga=https://openfga.github.io/helm-charts' + secrets: inherit + + updateVersionFile: + if: ${{ github.ref == 'refs/heads/main' }} + needs: [pipeline] + uses: openmfp/gha/.github/workflows/job-update-version-file.yml@main + secrets: inherit + with: + componentVersionKey: "keycloak" + version: ${{ needs.pipeline.outputs.version }} \ No newline at end of file diff --git a/charts/account-operator-crds/Chart.yaml b/charts/account-operator-crds/Chart.yaml index f28f61693..dd9a1f280 100644 --- a/charts/account-operator-crds/Chart.yaml +++ b/charts/account-operator-crds/Chart.yaml @@ -4,6 +4,6 @@ description: A Helm chart for Kubernetes type: application -version: 0.1.6 +version: 0.1.7 appVersion: "1.16.0" diff --git a/charts/account-operator-crds/README.md b/charts/account-operator-crds/README.md index 50a5c1f6d..a7619fc9a 100644 --- a/charts/account-operator-crds/README.md +++ b/charts/account-operator-crds/README.md @@ -1,12 +1,35 @@ # account-operator-crds -![Version: 0.1.6](https://img.shields.io/badge/Version-0.1.6-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.16.0](https://img.shields.io/badge/AppVersion-1.16.0-informational?style=flat-square) - A Helm chart for Kubernetes +![Version: 0.1.7](https://img.shields.io/badge/Version-0.1.7-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.16.0](https://img.shields.io/badge/AppVersion-1.16.0-informational?style=flat-square) + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + ## Values +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + | Key | Type | Default | Description | |-----|------|---------|-------------| | kcp.enabled | bool | `false` | Enable KCP | +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/account-operator-crds/README.md.gotmpl b/charts/account-operator-crds/README.md.gotmpl new file mode 100644 index 000000000..94146d84e --- /dev/null +++ b/charts/account-operator-crds/README.md.gotmpl @@ -0,0 +1,33 @@ +{{ template "chart.header" . }} +{{ template "chart.description" . }} + +{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesHeader" . }} + +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + +{{ template "chart.valuesTable" . }} + +{{ template "helm-docs.versionFooter" . }} diff --git a/charts/account-operator/Chart.lock b/charts/account-operator/Chart.lock index 4ba972e60..b5ee809ee 100644 --- a/charts/account-operator/Chart.lock +++ b/charts/account-operator/Chart.lock @@ -1,9 +1,9 @@ dependencies: - name: account-operator-crds - repository: file://../account-operator-crds + repository: oci://ghcr.io/openmfp/helm-charts version: 0.1.6 - name: common - repository: file://../common + repository: oci://ghcr.io/openmfp/helm-charts version: 0.1.5 -digest: sha256:5dcb2935c71c2e917170ef3b54c5ea586ab30269a5ec960353bfcbb362c073e1 -generated: "2024-11-27T20:12:23.434477831+02:00" +digest: sha256:906c653c1bbf56adabd5ef2154f13e02dc698affbbb4e1e6c849a36fa6e0a714 +generated: "2024-12-04T16:19:50.856906714+02:00" diff --git a/charts/account-operator/Chart.yaml b/charts/account-operator/Chart.yaml index 3163cdb6c..cfe89b60f 100644 --- a/charts/account-operator/Chart.yaml +++ b/charts/account-operator/Chart.yaml @@ -2,13 +2,13 @@ apiVersion: v2 name: account-operator description: A Helm chart for Kubernetes type: application -version: 0.4.24 +version: 0.5.0 appVersion: "0.111.0" dependencies: - name: account-operator-crds version: 0.1.6 condition: crds.enabled - repository: file://../account-operator-crds + repository: oci://ghcr.io/openmfp/helm-charts - name: common version: 0.1.5 - repository: file://../common + repository: oci://ghcr.io/openmfp/helm-charts diff --git a/charts/account-operator/README.md b/charts/account-operator/README.md index a749e6901..7dfb9a982 100644 --- a/charts/account-operator/README.md +++ b/charts/account-operator/README.md @@ -1,18 +1,39 @@ # account-operator -![Version: 0.4.21](https://img.shields.io/badge/Version-0.4.21-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.108.0](https://img.shields.io/badge/AppVersion-0.108.0-informational?style=flat-square) - A Helm chart for Kubernetes +![Version: 0.4.25](https://img.shields.io/badge/Version-0.4.25-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.109.0](https://img.shields.io/badge/AppVersion-0.109.0-informational?style=flat-square) + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + ## Requirements | Repository | Name | Version | |------------|------|---------| -| file://../account-operator-crds | account-operator-crds | 0.1.6 | -| file://../common | common | 0.1.5 | +| oci://ghcr.io/openmfp/helm-charts | account-operator-crds | 0.1.6 | +| oci://ghcr.io/openmfp/helm-charts | common | 0.1.5 | ## Values +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + | Key | Type | Default | Description | |-----|------|---------|-------------| | crds.enabled | bool | `true` | Enable CRDs | @@ -38,3 +59,5 @@ A Helm chart for Kubernetes | webhooks.certDir | string | `"/certs"` | The directory for webhook certificates | | webhooks.enabled | bool | `false` | Enable webhooks | +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/account-operator/README.md.gotmpl b/charts/account-operator/README.md.gotmpl new file mode 100644 index 000000000..94146d84e --- /dev/null +++ b/charts/account-operator/README.md.gotmpl @@ -0,0 +1,33 @@ +{{ template "chart.header" . }} +{{ template "chart.description" . }} + +{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesHeader" . }} + +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + +{{ template "chart.valuesTable" . }} + +{{ template "helm-docs.versionFooter" . }} diff --git a/charts/account-operator/charts/account-operator-crds-0.1.6.tgz b/charts/account-operator/charts/account-operator-crds-0.1.6.tgz index d7dbe12e9f0144999841269d306b18d615dee02d..0a94811eea18ea92fdab7a83dab4f0478b594a8e 100644 GIT binary patch delta 5206 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 Q0ssL2|6uf1kO05{08v+3(EtDd diff --git a/charts/account-operator/charts/common-0.1.5.tgz b/charts/account-operator/charts/common-0.1.5.tgz index 17b38ee60c182f7c7f48df7c60b6fb6498e30912..706e7e231676d0a51821a34bac89b6dddeb2b6b6 100644 GIT binary patch delta 4501 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 delta 4494 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 C&;~#N delta 4497 zcmV;C5pM43BcdaaJAXWBbK5$S?=ycz4_~&{dKJ;sVJD-i)RvQI5>I@st)yypYRiVG zmV_}y@ByF_jqU%wg@dOk$=S%xzFFaeEfReIjqXO{Udf0$RbbAOOR zV)_NSpe*XayzPuo1f0fFKOezI3}+B1-GDLU@F^K0k5Hm;A~M4s80~T7BE}wsbjS%` zIP;XA@3p)G=V$kDSJoA4|8o*1D4xgxY_R`MyK_*r|5u&v&iP=80Q?Hg zCJ5wn8X&}sOMeISzaG5yU;7FoKrT;7L?+044uD0GY%&QEBm<1dFvR^473#kRZ_W(7 z1~>Ji9*jvSFyl#QWP%q-7+zt(Q34eprwGc)02}My!qmtqkuYW9$Uux(aElx`PNTg)($MrIrZOL&07JlduNaRMY7!3<}NFCe5dDh(gq(Ts-0 zG4&}0Q0P5yTfRSYvv-D658Q)R`;@wCxN-bFL9vcs3Q^_Qt!L<`{4}>2`F54?3FT{z0gFbW2dzTiIFb>K zPzZ=Q8zRJnlNn0n!nVy;rvniaIqiYFuPPS*On=9MMpRkBdko1UV{?$AtmYolIj&}& z)>e6&4ra{9goX*n!IYy=w%UV&FqFTQNnFpsR<7^cGWm{nPBWC82BI)H_D#*`Xap)G zWsmV=8nDiRsaF#s@he%BjJfE!Y`v{Efm8a<0p-{dPUYeqizI%Nh2|szIna@64^JXZ zD}P{-Bs8+#lqb=V_$-jCG4uabH=}+~U`l#L+_8DR7JHncwiT)afZrtYh*(D} z9wXBfrD;67D2rF}1b3n1(-#~6Nu0$Yktp`Ba~Js$!x*{nWc*`6;rjTm)j8<2D)HZ| zR;Rs-|DL1V-Kj}&Od|x>=z^Ckz*{0{Ab(tVcyO|r)dAqexwTiB)9>zpMnRa2a)J|- zpK$R-Eiqi!8___5tDl4mp7{apEiPPebKYJ`(rqaIbpgRPSrrJU49%)`YfMrJ8uIla z#@3kCkvEJ5h8Reu!}l4H!SsX-F|;0=#IbIKcZneqf!>*##~vOWr6w4S(w`NLiGSIs zpekmDtD~Z0(mG)i=tidOuLpq)NG$uuj@g9m>!%$ zfL;u=b;!HLL9%Q-!@~>Wq@e9KmVP>RhC|A+9N<4yPg5?>*4K<-vA3JlS*y*%gQI^b zfi!L0HkC3q@=4>N3msAZSi=>YTz?obXOaah?7`sOg#&f86;p9)g4>Te_Fl!J0rwEm zNG*z?UFiD5gHzXaiNQ3Y0SS+VNRS&TD7Y8Z8tA=&kP4Xsa1u=rUQk{85?%x>8qraKk-X&_SR9`o zedu2gjy~j+m%V@L;Bo% z+mrtLvP||e#TrqLfuwU34UZ&p$~gTek(5OZ&#tNp!=_iSneLVvC4S7t}Bq@Ne( zmxKDzQO@kKl>f?xC920)gX8n-|NMMBxIVf#&gm<++uPr7wO@I@=X%edO8#n|k zG@;HaOMQ2Ka?*b{IKRBU>R*02epl7Gnh?gTz7sJCa6Qp4{mZK*TTW?Qrn^x0@O#4K z3R3;E_ZR2K75m&H(SInDI+GZd9*W%`#f(O>QFJ&V3rIL+LiW0y)+=}Oq-eHyR*CXs z|LA1!@p@S+GW9h04Wk};Lpq(;e}06v80@2HbeV2{xhrBm79%H;@sCA}g~514Ah-_w z;lW8az%Do&>ZOm;%nxXHZOnGnkHrF}r(Vj)Q#1>)!4{$o%YUI5bS&?vZMPFu`YGSa zM&x$-RitUxJZ4w%$p_8y`9qIc+J~P!WZ5?NlMh

S zwwob_?5pQEZLIzaT2O5YOmHD@^YKp!xYB;kw%Q>AL`tLZb1 zM|4I{ir5L3#?1o|Vv zaPB!y|9=}%qv+h++&Jyse08)wyMP);MfDB9zW?XL)3;8iK(`~do{B>6`1`L<-#Xpz z;jZx7erNymt+QX?)kp17bTachXm?KEYB@Of`YPEyD2D|1`8Bos@@+Y|ckWxNn7`S- z$}j!oplF6}ShgKk2?XP(+K@%kfId zQVML}Vpl4c(5Q)Ty`&Ao4287lh{2dHjmAf_lO4MneUpKuwQF| zzoY>x(&w#c!eWY+LYmzh{bkddY;{YCXUS&ZKD!@z4>xWlDV|&7P@t4)))IR)sH5cR zYJY94C;F-~sC_D08-|6i5PR*HuKrH1S7e>jBeFDcT_d}s_6?bpdRr@TC0$=Ly7`FN zV!ifXx663CvH`2e>{sn%)8~4unA>!s6@TV71!#r&2Gfq#T2emy_%0u=F`J0l)PW}d zMYU(9Mt7|t0b!L``D4I}DjPpuN}O25Ylbf;jjh5j`Ch6Z(eZsvVolz`)l`emy-F_B z5?+}M@eyP{3k6oV2t##Maz?oS!`wirum8OXlhKCGeX_D<{ogq}sONv~cDvjAAAiqM z?(T~9rmKCankV!DMV3{qUSG-)Z-JViY!>*pYRPWE8i3?H!PO8XNxm#l`v1JBZ;+9S zJ}Ea#>?^aBUo|kA)yMK6Z?^}w+XI`}9)RusKzV;)sqqbTn$ac`RlcG%Vu8r~=U*6; fxt;#($zof!Wn2EG%Kroa0RR8p`v!Aa0BQgLz;*SJ

3N2&c4L0a9jW2*%)__d$x7ri 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 delta 4495 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 diff --git a/charts/extension-manager-operator-crds/Chart.yaml b/charts/extension-manager-operator-crds/Chart.yaml index 5eebe9c2c..44f7f1807 100644 --- a/charts/extension-manager-operator-crds/Chart.yaml +++ b/charts/extension-manager-operator-crds/Chart.yaml @@ -15,7 +15,7 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.3 +version: 0.1.4 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to diff --git a/charts/extension-manager-operator-crds/README.md b/charts/extension-manager-operator-crds/README.md index 8ac00bcf6..6edd2b8d8 100644 --- a/charts/extension-manager-operator-crds/README.md +++ b/charts/extension-manager-operator-crds/README.md @@ -1,6 +1,34 @@ # extension-manager-operator-crds -![Version: 0.1.3](https://img.shields.io/badge/Version-0.1.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.16.0](https://img.shields.io/badge/AppVersion-1.16.0-informational?style=flat-square) - A Helm chart for Kubernetes +![Version: 0.1.4](https://img.shields.io/badge/Version-0.1.4-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.16.0](https://img.shields.io/badge/AppVersion-1.16.0-informational?style=flat-square) + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + +## Values + +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + +| Key | Type | Default | Description | +|-----|------|---------|-------------| + +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/extension-manager-operator-crds/README.md.gotmpl b/charts/extension-manager-operator-crds/README.md.gotmpl new file mode 100644 index 000000000..94146d84e --- /dev/null +++ b/charts/extension-manager-operator-crds/README.md.gotmpl @@ -0,0 +1,33 @@ +{{ template "chart.header" . }} +{{ template "chart.description" . }} + +{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesHeader" . }} + +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + +{{ template "chart.valuesTable" . }} + +{{ template "helm-docs.versionFooter" . }} diff --git a/charts/extension-manager-operator/Chart.lock b/charts/extension-manager-operator/Chart.lock index ce05994b9..7d242f030 100644 --- a/charts/extension-manager-operator/Chart.lock +++ b/charts/extension-manager-operator/Chart.lock @@ -1,9 +1,9 @@ dependencies: - name: extension-manager-operator-crds - repository: file://../extension-manager-operator-crds + repository: oci://ghcr.io/openmfp/helm-charts version: 0.1.3 - name: common - repository: file://../common + repository: oci://ghcr.io/openmfp/helm-charts version: 0.1.5 -digest: sha256:c866935aba532b7089a518053501d5e44863e0fc7ee4e6f6b5df9f324596f55b -generated: "2024-11-22T16:15:55.20032089+02:00" +digest: sha256:2688423cd8e784a91db8fe3503866ca5284da8c8aa1596dbf43f3786bc2f9404 +generated: "2024-12-04T16:44:54.438153194+02:00" diff --git a/charts/extension-manager-operator/Chart.yaml b/charts/extension-manager-operator/Chart.yaml index 4ac6bc96b..c503b407e 100644 --- a/charts/extension-manager-operator/Chart.yaml +++ b/charts/extension-manager-operator/Chart.yaml @@ -2,13 +2,13 @@ apiVersion: v2 name: extension-manager-operator description: A Helm chart for extension-manager-operator type: application -version: 0.22.35 +version: 0.22.36 appVersion: "0.77.0" dependencies: - name: extension-manager-operator-crds version: 0.1.3 condition: crds.enabled - repository: file://../extension-manager-operator-crds + repository: oci://ghcr.io/openmfp/helm-charts - name: common version: 0.1.5 - repository: file://../common + repository: oci://ghcr.io/openmfp/helm-charts diff --git a/charts/extension-manager-operator/README.md b/charts/extension-manager-operator/README.md index 4e552b051..c945efcf8 100644 --- a/charts/extension-manager-operator/README.md +++ b/charts/extension-manager-operator/README.md @@ -1,18 +1,39 @@ # extension-manager-operator -![Version: 0.22.34](https://img.shields.io/badge/Version-0.22.34-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.66.0](https://img.shields.io/badge/AppVersion-0.66.0-informational?style=flat-square) - A Helm chart for extension-manager-operator +![Version: 0.22.36](https://img.shields.io/badge/Version-0.22.36-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.77.0](https://img.shields.io/badge/AppVersion-0.77.0-informational?style=flat-square) + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + ## Requirements | Repository | Name | Version | |------------|------|---------| -| file://../common | common | 0.1.5 | -| file://../extension-manager-operator-crds | extension-manager-operator-crds | 0.1.3 | +| oci://ghcr.io/openmfp/helm-charts | common | 0.1.5 | +| oci://ghcr.io/openmfp/helm-charts | extension-manager-operator-crds | 0.1.3 | ## Values +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + | Key | Type | Default | Description | |-----|------|---------|-------------| | commonAnnotations | object | `{}` | | @@ -20,3 +41,5 @@ A Helm chart for extension-manager-operator | image.name | string | `"ghcr.io/openmfp/extension-content-operator"` | | | image.tag | string | `"0.16.0"` | | +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/extension-manager-operator/README.md.gotmpl b/charts/extension-manager-operator/README.md.gotmpl new file mode 100644 index 000000000..94146d84e --- /dev/null +++ b/charts/extension-manager-operator/README.md.gotmpl @@ -0,0 +1,33 @@ +{{ template "chart.header" . }} +{{ template "chart.description" . }} + +{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }} + +## Additional Information + +The `common` chart is a library of common resources that are shared across all other charts in the repository. It has no templates, but provides helm template functions and default values that can be used by other charts. + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesHeader" . }} + +The values in the `defaults:` section can be reused from other charts by using the lookup function "common.getKeyValue". It implements lookup on three levels: + +1. Looks for `keyOverride` in the chart's values.yaml +2. Looks for `global.key` in the chart's or parent chart's values.yaml +3. Uses the `key` in the chart's values.yaml +4. Uses the `common.defaults.key` value from the table below. + +1 has precendence over 2 over 3 over 4 respectively. This approach allows for individual charts to have minimal configuration, while still being able to override parameters locally. + +Example +``` +1) .Values.deployment.resources.limits.memoryOveride = 4096MB +2) .Values.global.deployment.resources.limits.memory = 2048MB +3) .Values.deployment.resources.limits.memory = 1024MB +4) .Values.common.defaults.deployment.resources.limits.memory = default 512MB +``` + +{{ template "chart.valuesTable" . }} + +{{ template "helm-docs.versionFooter" . }} diff --git a/charts/extension-manager-operator/charts/common-0.1.5.tgz b/charts/extension-manager-operator/charts/common-0.1.5.tgz index bc56a6f9b64ccd1f0e41749901dbe5e946162841..706e7e231676d0a51821a34bac89b6dddeb2b6b6 100644 GIT binary patch delta 4501 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 delta 4495 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 diff --git a/charts/extension-manager-operator/charts/extension-manager-operator-crds-0.1.3.tgz b/charts/extension-manager-operator/charts/extension-manager-operator-crds-0.1.3.tgz index f9db5e92a4cc39a3de98b287fa97c097fe39e468..9dfa88c17a41d028c0c9ce0b687bad1d9ffc2826 100644 GIT binary patch delta 22 ecmdlfy;FL^UMBXx8~1Dc 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 literal 0 HcmV?d00001 diff --git a/charts/keycloak/templates/crossplane/client.yaml b/charts/keycloak/templates/crossplane/client.yaml new file mode 100644 index 000000000..f5ca758dc --- /dev/null +++ b/charts/keycloak/templates/crossplane/client.yaml @@ -0,0 +1,45 @@ +{{- if .Values.crossplane.enabled -}} +{{- range $key, $val := .Values.crossplane.clients }} +--- +apiVersion: openidclient.keycloak.crossplane.io/v1alpha1 +kind: Client +metadata: + name: {{ $key }} +spec: + forProvider: + enabled: true + accessType: CONFIDENTIAL + clientId: {{ $key }} + standardFlowEnabled: true + name: {{ $val.name }} + realmIdRef: + name: {{ $.Values.crossplane.realm.name }} + validRedirectUris: {{ toYaml $val.validRedirectUris | nindent 6 }} + providerConfigRef: + name: {{ $.Values.crossplane.providerConfig.name }} + writeConnectionSecretToRef: + name: {{ $.Values.keycloakConfig.client.targetSecret.name }} + namespace: {{ $.Values.keycloakConfig.client.targetSecret.namespace }} + +--- + +apiVersion: openidclient.keycloak.crossplane.io/v1alpha1 +kind: ClientDefaultScopes +metadata: + name: {{ $key }}-default-scopes +spec: + forProvider: + clientIdRef: + name: {{ $key }} + defaultScopes: + - profile + - email + - basic + - acr + - groups + realmIdRef: + name: {{ $.Values.crossplane.realm.name }} + providerConfigRef: + name: {{ $.Values.crossplane.providerConfig.name }} +{{ end -}} +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/crossplane/external-secrets.yaml b/charts/keycloak/templates/crossplane/external-secrets.yaml new file mode 100644 index 000000000..b3137d7c0 --- /dev/null +++ b/charts/keycloak/templates/crossplane/external-secrets.yaml @@ -0,0 +1,54 @@ +{{- if and .Values.externalSecrets.enabled .Values.crossplane.enabled -}} +{{- range $key, $val := .Values.crossplane.identityProviders }} +apiVersion: external-secrets.io/v1beta1 +kind: ExternalSecret +metadata: + name: {{ include "common.entity.name" $ }}-{{ $key }} + namespace: openmfp-system +spec: + refreshInterval: "10m" + secretStoreRef: + name: environment-store + kind: SecretStore + target: + name: {{ $val.clientSecretRef.name }} + creationPolicy: Owner + deletionPolicy: Retain + data: + - secretKey: {{ $val.clientSecretRef.key }} + remoteRef: + key: {{ $val.clientSecretRemoteRef }} + property: {{ $val.clientSecretRef.key }} + conversionStrategy: Default +--- +{{ end -}} +apiVersion: external-secrets.io/v1beta1 +kind: ExternalSecret +metadata: + name: {{ include "common.entity.name" . }}-provider-config + namespace: openmfp-system +spec: + refreshInterval: "10m" + secretStoreRef: + name: environment-store + kind: SecretStore + target: + name: {{ .Values.crossplane.providerConfig.name }} + template: + engineVersion: v2 + data: + config: | + { + "client_id":"admin-cli", + "username": "{{ .Values.keycloakConfig.admin.username.value }}", + "password": "{{ `{{ .password }}` }}", + "url": "{{ .Values.keycloakConfig.url }}", + "realm": "master" + } + data: + - secretKey: password + remoteRef: + key: {{ .Values.externalSecrets.keycloakAdminRemoteRef }} + property: password + conversionStrategy: Default +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/crossplane/group.yaml b/charts/keycloak/templates/crossplane/group.yaml new file mode 100644 index 000000000..9e19c0d07 --- /dev/null +++ b/charts/keycloak/templates/crossplane/group.yaml @@ -0,0 +1,61 @@ +{{- if .Values.crossplane.enabled -}} +apiVersion: defaults.keycloak.crossplane.io/v1alpha1 +kind: DefaultGroups +metadata: + name: default +spec: + forProvider: + groupIdsRefs: + - name: portal + realmIdRef: + name: {{ .Values.crossplane.realm.name }} + providerConfigRef: + name: {{ .Values.crossplane.providerConfig.name }} +--- + +apiVersion: group.keycloak.crossplane.io/v1alpha1 +kind: Group +metadata: + name: portal +spec: + forProvider: + name: portal + realmIdRef: + name: {{ .Values.crossplane.realm.name }} + providerConfigRef: + name: {{ .Values.crossplane.providerConfig.name }} + +--- + +apiVersion: openidclient.keycloak.crossplane.io/v1alpha1 +kind: ClientScope +metadata: + name: groups-client-scope +spec: + forProvider: + description: When requested, this scope will map a user's group memberships to + a claim + includeInTokenScope: true + name: groups + realmIdRef: + name: {{ .Values.crossplane.realm.name }} + providerConfigRef: + name: {{ .Values.crossplane.providerConfig.name }} + +--- + +apiVersion: openidgroup.keycloak.crossplane.io/v1alpha1 +kind: GroupMembershipProtocolMapper +metadata: + name: group-membership-mapper +spec: + forProvider: + claimName: groups + clientIdRef: + name: groups-client-scope + name: group-membership-mapper + realmIdRef: + name: {{ .Values.crossplane.realm.name }} + providerConfigRef: + name: {{ .Values.crossplane.providerConfig.name }} +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/crossplane/identity-provider.yaml b/charts/keycloak/templates/crossplane/identity-provider.yaml new file mode 100644 index 000000000..06ac78482 --- /dev/null +++ b/charts/keycloak/templates/crossplane/identity-provider.yaml @@ -0,0 +1,59 @@ +{{- if .Values.crossplane.enabled -}} +{{- range $key, $val := .Values.crossplane.identityProviders }} +apiVersion: oidc.keycloak.crossplane.io/v1alpha1 +kind: IdentityProvider +metadata: + name: {{ $key }} +spec: + forProvider: + alias: {{ $key }} + realmRef: + name: {{ $.Values.crossplane.realm.name }} + authorizationUrl: {{ $val.authorizationUrl }} + tokenUrl: {{ $val.tokenUrl }} + issuer: {{ $val.issuer }} + clientId: {{ $val.clientId }} + clientSecretSecretRef: {{ $val.clientSecretRef | toYaml | nindent 6 }} + defaultScopes: openid email profile + trustEmail: true + hideOnLoginPage: true + providerConfigRef: + name: {{ $.Values.crossplane.providerConfig.name }} +--- +apiVersion: identityprovider.keycloak.crossplane.io/v1alpha1 +kind: IdentityProviderMapper +metadata: + name: lastname +spec: + forProvider: + realmRef: + name: {{ $.Values.crossplane.realm.name }} + extraConfig: + Claim: last_name + UserAttribute: lastName + syncMode: INHERIT + identityProviderAlias: {{ $key }} + identityProviderMapper: 'oidc-user-attribute-idp-mapper' + name: last_name + providerConfigRef: + name: {{ $.Values.crossplane.providerConfig.name }} +--- +apiVersion: identityprovider.keycloak.crossplane.io/v1alpha1 +kind: IdentityProviderMapper +metadata: + name: firstname +spec: + forProvider: + realmRef: + name: {{ $.Values.crossplane.realm.name }} + extraConfig: + Claim: first_name + UserAttribute: firstName + syncMode: INHERIT + identityProviderAlias: {{ $key }} + identityProviderMapper: 'oidc-user-attribute-idp-mapper' + name: first_name + providerConfigRef: + name: {{ $.Values.crossplane.providerConfig.name }} +{{ end -}} +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/crossplane/provider-config.yaml b/charts/keycloak/templates/crossplane/provider-config.yaml new file mode 100644 index 000000000..54fa599c9 --- /dev/null +++ b/charts/keycloak/templates/crossplane/provider-config.yaml @@ -0,0 +1,31 @@ +{{- if .Values.crossplane.enabled -}} +apiVersion: keycloak.crossplane.io/v1beta1 +kind: ProviderConfig +metadata: + name: {{ .Values.crossplane.providerConfig.name }} + namespace: {{ .Values.crossplane.providerConfig.namespace }} +spec: + credentials: + source: Secret + secretRef: + name: {{ .Values.crossplane.providerConfig.name }} + namespace: {{ .Values.crossplane.providerConfig.namespace }} + key: config +{{- if not .Values.externalSecrets.enabled }} +--- +apiVersion: v1 +kind: Secret +metadata: + name: {{ .Values.crossplane.providerConfig.name }} + namespace: {{ .Values.crossplane.providerConfig.namespace }} +stringData: + config: | + { + "client_id":"admin-cli", + "username": "{{ .Values.keycloakConfig.admin.username.value }}", + "password": "admin", + "url": "{{ .Values.keycloakConfig.url }}", + "realm": "master" + } +{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/crossplane/realm.yaml b/charts/keycloak/templates/crossplane/realm.yaml new file mode 100644 index 000000000..b0432f5c7 --- /dev/null +++ b/charts/keycloak/templates/crossplane/realm.yaml @@ -0,0 +1,20 @@ +{{- if .Values.crossplane.enabled -}} +apiVersion: realm.keycloak.crossplane.io/v1alpha1 +kind: Realm +metadata: + name: {{ .Values.crossplane.realm.name}} +spec: + forProvider: + accessCodeLifespan: 1h + attributes: + organizationsEnabled: "true" + displayName: {{ .Values.crossplane.realm.displayName }} + displayNameHtml: {{ .Values.crossplane.realm.displayName }} + enabled: true + realm: {{ .Values.crossplane.realm.name }} + loginWithEmailAllowed: true + registrationEmailAsUsername: true + registrationAllowed: {{ .Values.crossplane.realm.registrationAllowed }} + providerConfigRef: + name: {{ .Values.crossplane.providerConfig.name }} +{{- end -}} \ No newline at end of file diff --git a/charts/keycloak/templates/external-secrets.yaml b/charts/keycloak/templates/external-secrets.yaml new file mode 100644 index 000000000..1cbe9eef5 --- /dev/null +++ b/charts/keycloak/templates/external-secrets.yaml @@ -0,0 +1,45 @@ +{{- if eq (include "common.hasNestedKey" (dict "Values" .Values "key" "externalSecrets.enabled")) "true" }} +apiVersion: external-secrets.io/v1beta1 +kind: ExternalSecret +metadata: + name: {{ include "common.entity.name" . }}-admin + namespace: openmfp-system +spec: + refreshInterval: "10m" + secretStoreRef: + name: environment-store + kind: SecretStore + target: + name: keycloak-admin + creationPolicy: Owner + deletionPolicy: Retain + data: + - secretKey: secret + remoteRef: + key: {{ .Values.externalSecrets.keycloakAdminRemoteRef }} + property: password + conversionStrategy: Default + +--- + +apiVersion: external-secrets.io/v1beta1 +kind: ExternalSecret +metadata: + name: {{ include "common.entity.name" . }}-postgres + namespace: openmfp-system +spec: + refreshInterval: "10m" + secretStoreRef: + name: environment-store + kind: SecretStore + target: + name: postgres-admin-password + creationPolicy: Owner + deletionPolicy: Retain + data: + - secretKey: password + remoteRef: + key: {{ .Values.externalSecrets.postgresAdminRemoteRef }} + property: password + conversionStrategy: Default + {{- end }} \ No newline at end of file diff --git a/charts/keycloak/templates/istio-virtualservice.yaml b/charts/keycloak/templates/istio-virtualservice.yaml new file mode 100644 index 000000000..b887882d2 --- /dev/null +++ b/charts/keycloak/templates/istio-virtualservice.yaml @@ -0,0 +1,29 @@ +{{- if eq (include "common.getNestedValue" (dict "Values" .Values "key" "istio.enabled")) "true" -}} +apiVersion: networking.istio.io/v1beta1 +kind: VirtualService +metadata: + name: {{ include "common.entity.name" . }} +spec: + hosts: + {{ .Values.istio.virtualservice.hosts | toYaml | nindent 4 }} + gateways: + - {{ .Release.Namespace}}/{{ include "common.getKeyValue" (dict "Values" .Values "key" "istio.gateway.name") }} + http: + - route: + - destination: + host: {{ .Values.service.name }}.{{ .Release.Namespace }}.svc.cluster.local + port: + number: {{ .Values.service.port }} + {{- if .Values.domain.pathPrefix }} + match: + - uri: + prefix: {{ .Values.domain.pathPrefix }} + {{ end }} + {{- if eq (include "common.getNestedValue" (dict "Values" .Values "key" "istio.https.enabled")) "true" }} + headers: + request: + set: + X-Forwarded-Proto: "https" + {{ end }} + +{{- end }} \ No newline at end of file diff --git a/charts/keycloak/templates/job-keycloak-configuration.yaml b/charts/keycloak/templates/job-keycloak-configuration.yaml new file mode 100644 index 000000000..4a4b5a8f9 --- /dev/null +++ b/charts/keycloak/templates/job-keycloak-configuration.yaml @@ -0,0 +1,305 @@ +{{- if not .Values.crossplane.enabled -}} +apiVersion: batch/v1 +kind: Job +metadata: + name: {{ include "common.entity.name" . }}-configuration + annotations: + {{ range $key, $value := .Values.job.annotations }} + {{ $key }}: {{ $value }} + {{ end }} +spec: + activeDeadlineSeconds: 1800 + template: + spec: + automountServiceAccountToken: true + serviceAccountName: {{ .Values.job.serviceAccount}} + imagePullSecrets: + - name: {{ include "common.imagePullSecret" . | nindent 2 }} + containers: + - name: {{ include "common.entity.name" . }} + image: ghcr.io/openmfp/charts/job/curl-jq:latest + command: ["/bin/sh", "-c"] + args: + - | + #!/bin/sh + set +e + {{- if .Values.debug }} + set -x + {{- end }} + + REALM={{ .Values.keycloakConfig.realm.name }} + + function quitIstio { + {{- if eq (include "common.getNestedValue" (dict "Values" .Values "key" "istio.quitSidecar")) "true" }} + curl -s -X POST http://localhost:15000/quitquitquit + {{- end }} + } + + MAX_RETRIES=15 + RETRY_DELAY=5 + + for i in $(seq 1 $MAX_RETRIES); do + # Get the admin token + TOKEN=$(curl -s --location --request POST "$KEYCLOAK_URL/realms/{{ .Values.keycloakConfig.realm.name }}/protocol/openid-connect/token" \ + --header 'Content-Type: application/x-www-form-urlencoded' \ + --data-urlencode "username=$KEYCLOAK_USER" \ + --data-urlencode "password=$KEYCLOAK_PASSWORD" \ + --data-urlencode 'grant_type=password' \ + --data-urlencode 'client_id=admin-cli' | jq -r '.access_token') + + if [ -n "$TOKEN" ]; then + break + elif [ $i -eq $MAX_RETRIES ]; then + echo "Failed to get token after $MAX_RETRIES attempts, exiting" + quitIstio + exit 1 + else + echo "Failed to get token, attempt $i/$MAX_RETRIES. Retrying in $RETRY_DELAY seconds..." + sleep $RETRY_DELAY + fi + done + + {{- if .Values.keycloakConfig.userRegistration.enabled }} + echo "Patch the realm to allow for user registration" + curl -s -X PUT -H 'Content-Type: application/json' -H "Authorization: bearer $TOKEN" -d '{"registrationAllowed": true, "registrationEmailAsUsername": true}' $KEYCLOAK_URL/admin/realms/$REALM + {{- end }} + + CLIENT_ID=$(curl -s -H "Authorization: Bearer $TOKEN" "$KEYCLOAK_URL/admin/realms/$REALM/clients" | jq -r '.[] | select(.clientId=="openmfp") | .id') + if [ -z "$CLIENT_ID" ]; then + echo "Creating client '{{ .Values.keycloakConfig.client.name }}'" + CREATE_CLIENT_PAYLOAD=$(cat <OpenMFP + enabled: true + loginWithEmailAllowed: true + realm: openmfp + registrationAllowed: false + registrationEmailAsUsername: true + providerConfigRef: + name: keycloak-provider-config diff --git a/charts/keycloak/tests/__snapshot__/external-secrets_test.yaml.snap b/charts/keycloak/tests/__snapshot__/external-secrets_test.yaml.snap new file mode 100644 index 000000000..3294e4bb5 --- /dev/null +++ b/charts/keycloak/tests/__snapshot__/external-secrets_test.yaml.snap @@ -0,0 +1,43 @@ +matches the snapshot: + 1: | + apiVersion: external-secrets.io/v1beta1 + kind: ExternalSecret + metadata: + name: RELEASE-NAME-keycloak-admin + namespace: openmfp-system + spec: + data: + - remoteRef: + conversionStrategy: Default + key: dxp-core-team/manual-secrets/keycloak-admin + property: password + secretKey: secret + refreshInterval: 10m + secretStoreRef: + kind: SecretStore + name: environment-store + target: + creationPolicy: Owner + deletionPolicy: Retain + name: keycloak-admin + 2: | + apiVersion: external-secrets.io/v1beta1 + kind: ExternalSecret + metadata: + name: RELEASE-NAME-keycloak-postgres + namespace: openmfp-system + spec: + data: + - remoteRef: + conversionStrategy: Default + key: null + property: password + secretKey: password + refreshInterval: 10m + secretStoreRef: + kind: SecretStore + name: environment-store + target: + creationPolicy: Owner + deletionPolicy: Retain + name: postgres-admin-password diff --git a/charts/keycloak/tests/__snapshot__/istio_test.yaml.snap b/charts/keycloak/tests/__snapshot__/istio_test.yaml.snap new file mode 100644 index 000000000..f5490678d --- /dev/null +++ b/charts/keycloak/tests/__snapshot__/istio_test.yaml.snap @@ -0,0 +1,37 @@ +matches the snapshot: + 1: | + apiVersion: networking.istio.io/v1beta1 + kind: VirtualService + metadata: + name: RELEASE-NAME-keycloak + spec: + gateways: + - openmfp-system/test + hosts: + - keycloak.openmfp.org + http: + - route: + - destination: + host: keycloak.openmfp-system.svc.cluster.local + port: + number: null +matches the snapshot (with path prefix): + 1: | + apiVersion: networking.istio.io/v1beta1 + kind: VirtualService + metadata: + name: RELEASE-NAME-keycloak + spec: + gateways: + - openmfp-system/test + hosts: + - keycloak.openmfp.org + http: + - match: + - uri: + prefix: /auth + route: + - destination: + host: keycloak.openmfp-system.svc.cluster.local + port: + number: null diff --git a/charts/keycloak/tests/__snapshot__/job_test.yaml.snap b/charts/keycloak/tests/__snapshot__/job_test.yaml.snap new file mode 100644 index 000000000..39fdf7272 --- /dev/null +++ b/charts/keycloak/tests/__snapshot__/job_test.yaml.snap @@ -0,0 +1,309 @@ +matches the snapshot: + 1: | + apiVersion: batch/v1 + kind: Job + metadata: + annotations: + argocd.argoproj.io/hook: PostSync + name: RELEASE-NAME-keycloak-configuration + spec: + activeDeadlineSeconds: 1800 + imagePullSecrets: + - containers: + - args: + - | + #!/bin/sh + set +e + + REALM=master + + function quitIstio { + curl -s -X POST http://localhost:15000/quitquitquit + } + + MAX_RETRIES=15 + RETRY_DELAY=5 + + for i in $(seq 1 $MAX_RETRIES); do + # Get the admin token + TOKEN=$(curl -s --location --request POST "$KEYCLOAK_URL/realms/master/protocol/openid-connect/token" \ + --header 'Content-Type: application/x-www-form-urlencoded' \ + --data-urlencode "username=$KEYCLOAK_USER" \ + --data-urlencode "password=$KEYCLOAK_PASSWORD" \ + --data-urlencode 'grant_type=password' \ + --data-urlencode 'client_id=admin-cli' | jq -r '.access_token') + + if [ -n "$TOKEN" ]; then + break + elif [ $i -eq $MAX_RETRIES ]; then + echo "Failed to get token after $MAX_RETRIES attempts, exiting" + quitIstio + exit 1 + else + echo "Failed to get token, attempt $i/$MAX_RETRIES. Retrying in $RETRY_DELAY seconds..." + sleep $RETRY_DELAY + fi + done + echo "Patch the realm to allow for user registration" + curl -s -X PUT -H 'Content-Type: application/json' -H "Authorization: bearer $TOKEN" -d '{"registrationAllowed": true, "registrationEmailAsUsername": true}' $KEYCLOAK_URL/admin/realms/$REALM + + CLIENT_ID=$(curl -s -H "Authorization: Bearer $TOKEN" "$KEYCLOAK_URL/admin/realms/$REALM/clients" | jq -r '.[] | select(.clientId=="openmfp") | .id') + if [ -z "$CLIENT_ID" ]; then + echo "Creating client 'openmfp'" + CREATE_CLIENT_PAYLOAD=$(cat <CeHMl++J84ATzU%<20v}Tv|6p! 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 delta 4493 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�=KSgJUn*JM{(EOCWg>cedo-GO zVoEU_36HY9AsJ0@&jPnJY>UQY#v^@!n}q)%LVseVyW`r_#T@W}XOi;=A+=F8YQz9T{d9W;A!Z4MPa5keO6rg6|B9hLIl!VUI zlwEVTr_d()CVw#u5mJF87|tsV@N~~j6l;2F5pBb6^2}d1AkZEg8*&^qL4BX6(x>4Z zQbFU1CSb146z5(|I|I7UG)h8@FqR_2VX6rn5%hPkqUShm4^9}nHTkD*ZgHMnc)7{i ztDEreqI|)~=~S@ng_m2LFCZ}v3E>#aMlxLwJ_~zZcYo7_UIyMT1J|$1XynpuC