commit ce8bd8d64ea2728dd97d903c43b3e3c659fc1d0e Author: Wolfgang Hottgenroth Date: Mon Jan 19 16:24:02 2026 +0100 initial diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..012e0c3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +secrets.txt + diff --git a/ENVDB b/ENVDB new file mode 100644 index 0000000..0e71642 --- /dev/null +++ b/ENVDB @@ -0,0 +1,7 @@ +DBNAMESPACE=database1 +DEPLOYNAME=database +PGUSER=`kubectl get secret -n $DBNAMESPACE $DEPLOYNAME -o jsonpath="{.data.superuser-username}" | base64 --decode` +PGHOST=`kubectl get services $DEPLOYNAME -n $DBNAMESPACE -o jsonpath="{.status.loadBalancer.ingress[0].ip}"` +PGPASSWORD=`kubectl get secret -n $DBNAMESPACE $DEPLOYNAME -o jsonpath="{.data.superuser-password}" | base64 --decode` +PGSSLMODE=require +export PGUSER PGHOST PGPASSWORD PGSSLMODE diff --git a/encrypt-secrets.sh b/encrypt-secrets.sh new file mode 100755 index 0000000..c3e991c --- /dev/null +++ b/encrypt-secrets.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +gpg --pinentry-mode=loopback --symmetric --cipher-algo AES256 --armor --output secrets.asc secrets.txt + diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..ee803e0 --- /dev/null +++ b/install.sh @@ -0,0 +1,25 @@ +#!/bin/bash + + +VERSION=0.13.0 +NAMESPACE=$(cat namespace) + +. ./ENVDB + +kubectl create namespace $NAMESPACE || echo "namespace already exists" + +SECRETS_PLAINTEXT=$(mktemp) +gpg --pinentry-mode=loopback --decrypt --output $SECRETS_PLAINTEXT secrets.asc +kubectl create secret generic keycloak-secrets \ + --from-env-file=$SECRETS_PLAINTEXT \ + --dry-run=client -o yaml | \ + kubectl apply -f - -n $NAMESPACE +rm $SECRETS_PLAINTEXT + + +./roll-db-credential.sh + + +helm upgrade --install keycloak2 -f values.yml oci://registry-1.docker.io/cloudpirates/keycloak --version $VERSION --namespace=$NAMESPACE + + diff --git a/namespace b/namespace new file mode 100644 index 0000000..ddb9ebf --- /dev/null +++ b/namespace @@ -0,0 +1 @@ +keycloak2 diff --git a/roll-db-credential.sh b/roll-db-credential.sh new file mode 100755 index 0000000..7c6814a --- /dev/null +++ b/roll-db-credential.sh @@ -0,0 +1,32 @@ +#!/bin/bash + + + +DBNAMESPACE=database1 +DEPLOYNAME=database +PGUSER=`kubectl get secret -n $DBNAMESPACE $DEPLOYNAME -o jsonpath="{.data.superuser-username}" | base64 --decode` +PGHOST=`kubectl get services $DEPLOYNAME -n $DBNAMESPACE -o jsonpath="{.status.loadBalancer.ingress[0].ip}"` +PGPASSWORD=`kubectl get secret -n $DBNAMESPACE $DEPLOYNAME -o jsonpath="{.data.superuser-password}" | base64 --decode` +PGSSLMODE=require +export PGUSER PGHOST PGPASSWORD PGSSLMODE + +DB_USER=keycloak2 +DB_PASSWD=$(openssl rand -base64 24) + +NAMESPACE=$(cat namespace) + +psql <