mirror of
https://github.com/outbackdingo/homelab-v.git
synced 2026-08-25 14:53:19 +00:00
feat: configure keycloak using crossplane provider
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
|
||||
kind: Client
|
||||
metadata:
|
||||
name: cloudflare
|
||||
spec:
|
||||
deletionPolicy: Delete
|
||||
forProvider:
|
||||
name: Cloudflare
|
||||
accessType: CONFIDENTIAL
|
||||
clientId: cloudflare
|
||||
realmIdRef:
|
||||
name: homelab
|
||||
clientSecretSecretRef:
|
||||
name: cloudflare-oidc-credentials
|
||||
namespace: keycloak
|
||||
key: secret
|
||||
standardFlowEnabled: true
|
||||
baseUrl: "https://stonegarden.cloudflareaccess.com"
|
||||
validRedirectUris:
|
||||
- "https://stonegarden.cloudflareaccess.com/cdn-cgi/access/callback"
|
||||
@@ -0,0 +1,14 @@
|
||||
apiVersion: bitnami.com/v1alpha1
|
||||
kind: SealedSecret
|
||||
metadata:
|
||||
name: cloudflare-oidc-credentials
|
||||
namespace: keycloak
|
||||
spec:
|
||||
encryptedData:
|
||||
key: AgB1jFD1jq7ri58egGkilGnaULqMvx3V6nsOoJNrn10OshfyouMHKVaC+6LywQATe88/5AIW37PMwh1XfLFjXH4EFoqA/93S44gxHtLoJ08Im59MnGJStn3gr9ClxNmukOUVE25vUkcKqDvlUa7UqHwoeppr/QN2byuwXB/cRhoZnG/KJuI5358SBjl1QseXqm5R5Gk7g36pXUhlDnsVicN7uYwxOE0BlYHtdlihWyecBWOIxKkLXIeSALmKcxDpE5v08wmN1MARSV58YfZiTEFWFWmpnPvxWZS3fHhHpppZjD6uRrKnXQlNH1KjN5Ccs29LB/tBVD9qt4fvvISKzWCXRkb2BCgAZo2MyhScemIq3MkTG7lMD2hEW9TAviOqZKmLg1OILKTKG5bq84ygB5vsseVNtj+jfUCyzaHyCH2bANfTDZA0HyhQl1WFhpXOX8k3kBhhCKOnpYa2XYDEHMtnVXgqsIf1lMOrG9+PADjrVTLu0Zh+gxpRNvs8aIfrrLxOzoMi6jOzuj2NoydRNLkfn8cAGsoO4MQREZdytCLbU+dXcXSr+ZKJOpStR8fwmNZzoK92sU7ya+a3NceYjrIOwpG2EyWrdUDNmX5RcUPBnaenmPfFgm3ry6EivrILRG5VV8kn8uyOXHL3qNmzHe24Y8mm92UCPWAFSxYqhru/EXMGEMriHepJlaahdTLLI/uEcSwNRvleWFoS
|
||||
secret: AgCLgiXGxb1QP79KDOJanMq/wt+yTU4kDfEqc1D0zwJZCJD0kSzplKiUPuWjazRfa8abkh02Hv9HnpxblF2GE9jSq/bLCdszp2QhJFoWJlCpyBikTnwZWeXJVPu7ho40R6MuRsQC4hf1uysQgrnQItY730npI1dfxl7VLbkZX0QNPagHTUT01LsQ9u1i1mmfh0S0SLIQw8BAiQfZR8FSDkEuxjmIWVvtgs1Ok3sC6IbSocVnzQ6DlCntkJVef2W6/S9F+GqOrEgNdIWZI/rPClFUPXdhWd+JsuEGiw51xgF6PApcxo2QTOQngXAITnsYR1pYWR/VaQ9wcx6jUYzkknzlU1sVZgcU9TxKofIXNPAP5uabPD3NX6ZmmXEpNa8DwO2h0LnXOOHEKmNhb+zAT5o8T4Bf9GmsGCP19+xc2+ebTV/bIvV9PDwEJjyBZ9sSXirXcfu04ToyKdLsDW28QTwHRD48fA10aWqxRbeKEFIQ9tfAWEdBZ2dhLnwhUMvyEVKiCGAi0AeLNRlZFN/IMEq+WoZu4iugSgm1GRjQnTYROdxJWBC/gL2OVMWpGFhr9We0ZeuH79OtMQrvOdfopqk7d7sCWAhiSk3iCbupnyOpkQKRSvYxD5mwD0DteFc1gABBdSdK03qcG+d4MsiC98F9OFZguaOtEHlIFHa4wSIOWdGPAQK4GhuVTkHm9oAp4PXQSKwqFOi4PLoL37A8gGSWAr/Z3aYuRrcwDi8U+42HHz8rEmpc8y8c
|
||||
template:
|
||||
metadata:
|
||||
name: cloudflare-oidc-credentials
|
||||
namespace: keycloak
|
||||
type: Opaque
|
||||
@@ -0,0 +1,8 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- realms.yaml
|
||||
- users.yaml
|
||||
- client-cloudflare.yaml
|
||||
- cloudflare-oidc-credentials.yaml
|
||||
@@ -0,0 +1,7 @@
|
||||
apiVersion: realm.keycloak.crossplane.io/v1alpha1
|
||||
kind: Realm
|
||||
metadata:
|
||||
name: homelab
|
||||
spec:
|
||||
forProvider:
|
||||
realm: homelab
|
||||
@@ -0,0 +1,13 @@
|
||||
apiVersion: user.keycloak.crossplane.io/v1alpha1
|
||||
kind: User
|
||||
metadata:
|
||||
name: veh
|
||||
spec:
|
||||
forProvider:
|
||||
enabled: true
|
||||
email: [email protected]
|
||||
firstName: Vegard
|
||||
lastName: Hagen
|
||||
username: veh
|
||||
realmIdRef:
|
||||
name: homelab
|
||||
@@ -7,6 +7,7 @@ resources:
|
||||
- secret-keycloak-admin.yaml
|
||||
- secret-keycloak-db-credentials.yaml
|
||||
- http-route.yaml
|
||||
- config
|
||||
|
||||
helmCharts:
|
||||
- name: keycloak
|
||||
|
||||
@@ -5,7 +5,7 @@ metadata:
|
||||
namespace: crossplane
|
||||
spec:
|
||||
encryptedData:
|
||||
credentials: AgC1UwnOntsUCENt8DDyhkJ4mAYNbprWN1ebddr/A9CpLoZGhAArw3GqehUKmknAIog4nCzMb3VeJKmR3RC3OXoOjKmCWeiifrBrXArvtbApPkK3juSwNiJJ0KCDp23e/bXujYuvWIY83CadY01HTIfKcT9pLB/LFRwFHmcoDhdw7Yc1QPgx11gxtBPJyYe6MDRDlLso45rzfuO9HxWao/bh44OK5IND3W2zcIrDBYaPChN77fEiJN0XjZL4u6fnJwH72D1eHiNycAzanxKLQNaEl/Y/2fjQPkvEqpG08IkKtANFBGyC72bNnRwIxX3tIBV6dXnVoWYV5MEn5qhPPiEuqPVjlTYCfaQK5ZZAc6dKTpdGzA+s9MYbjLbdFtUa0VbYvdVKfrxjiJYWk/8kgktcR/hdo/mntGoKwdDTNHycXJduPKtzx02yj1hAXQ/1kyWhuX5YsEZ0xdzE2aO1TvxJ7wIeQ7ozHq2h6W0F0N9w/lpLfWn654321Ca3KxWN3HGqqzIM3yAsMfX0RsmafepNEDyGPHlCkpNHvouBm3QFBNXiMprJeqcwDuM0SnrrHQdTNGBpmN0V9TxQO06tgva31aA/2vkFJJ+tq90J6yBMNRSsiySJD7MvQ6yt0s5O8es765fxszG+tR5sJTHgbWrMPlVdLIz5JR+LS+L+g7ek6AlqpU7WgMuylb+XAvDfJQH3rjtyNArKR+qaAxpIcSMZUlAUHvhdnn/nmudDg+3UBZQmfkriVrA+tCeeH84reHOPFO5aJBM/+if/qgibGHCXqf/JS/vJZX168XZcDBVkhd9ue7iH0j7on0lji8ch0HTqP6FQgZ9Mm2zZVL035jtZWN77UCwD0Pn2q4C+dq6mgh79KQABMuPwI5GiOeattecFY9SRAD+n4cqNnbAtVECP
|
||||
credentials: AgC01M3DaKy//JFVDlXhXfN24aL8vMlwtvSqBK61MIiDEqzEfWmjQq1h2dUF4+dmY5nel6165m8AEUWPhsslyUA8BMkD2XyP9rEJlsLdfcpFDUwHe0fSJDXlSho7MEllK08VVVwjk2rZnOil9LBTOGT7FFuXCuaiR5CWKjby/SLHoxynlCQqEHYMTQtT5iwwjkbrBa3LPh+VM8z2VrQzF5yx8fmundnNVxcMhV6V9fKiWj+8+gZsZtifNEcSp2MpVUQyTo1q5YExz1hGyA2LAWBqzhyoGJ+L4iqn+H2C7ZvPX+j040ZMo+d0LmiQwbrscAb/HJXv1zZFOlC0+HQecn8aLOPga+ITsAXdnNOXQ/3CjuyngwJXi6xn8aThpCNF12ut0OxvGtrPYSTs1F909c1jsHbFcpMlncxK28OMYfcO3Vhx/K+ZynCo50XhyGv52fueEvynTMv9eFQngQeX64UqXHC8P7NclbeFKswH6MMWPME9+RZLU4hHy/LuxhI5EH+9w/ucDDLpkiBTZgSfOcmGJI8h2cQERKF4Y09Br1jT/ZIYF6DSCFsmKAeFnkgBTtVsi2yr/wXeftOHUYv/WDjfPMtKQcUAdtZgZ8sdXk9wCwHcv+uTbQr6BFRX9R2oemOIiSfBXJZW79k5HAghlva2KocVCOsvydeBrWKihNf9grqO2jvEmQwjU/yb9vFXvLhdEZZkk0v3dFhE01qZOp4kqo2Z7PS5axJFGLA6NKegiWzjVlDA1E5ODBYNi9b5PHc/Jff058YU3bhQECKqm5T37+4zesfwdZ+/T/r5DU4qlS3P8hE4JAr2SORQ7ExYYCWBXUCTXOsPQobkIvvWuRrPTU3wEwgzGMuVEqn0S5Sp/fVG3M6PBIenwTvhKCOJZckpt6gwI3FyUbrr6uLvIbs=
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
apiVersion: pkg.crossplane.io/v1
|
||||
kind: Provider
|
||||
metadata:
|
||||
name: keycloak
|
||||
name: provider-keycloak
|
||||
spec:
|
||||
package: xpkg.upbound.io/crossplane-contrib/provider-keycloak:v1.0.0
|
||||
|
||||
@@ -11,6 +11,8 @@ spec:
|
||||
server: '*'
|
||||
- namespace: 'cert-manager'
|
||||
server: '*'
|
||||
- namespace: 'crossplane'
|
||||
server: '*'
|
||||
- namespace: 'node-feature-discovery'
|
||||
server: '*'
|
||||
- namespace: 'intel-device-plugins'
|
||||
|
||||
@@ -3,8 +3,6 @@ kind: Application
|
||||
metadata:
|
||||
name: applications
|
||||
namespace: argocd
|
||||
finalizers:
|
||||
- resources-finalizer.argocd.argoproj.io
|
||||
spec:
|
||||
project: app-of-apps
|
||||
source:
|
||||
|
||||
@@ -3,8 +3,6 @@ kind: Application
|
||||
metadata:
|
||||
name: infrastructure
|
||||
namespace: argocd
|
||||
finalizers:
|
||||
- resources-finalizer.argocd.argoproj.io
|
||||
spec:
|
||||
project: app-of-apps
|
||||
source:
|
||||
|
||||
Reference in New Issue
Block a user