39 lines
970 B
Bash
39 lines
970 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
export PGUSER=`kubectl get secret -n database timescaledb -o jsonpath="{.data.superuser-username}" | base64 --decode`
|
||
|
export PGHOST=`kubectl get services traefik -n system -o jsonpath="{.status.loadBalancer.ingress[0].ip}"`
|
||
|
export PGPASSWORD=`kubectl get secret -n database timescaledb -o jsonpath="{.data.superuser-password}" | base64 --decode`
|
||
|
export PGSSLMODE=require
|
||
|
|
||
|
|
||
|
DATABASE=ma
|
||
|
LOGIN=ma
|
||
|
PASSWORD=`openssl rand -base64 24`
|
||
|
NAMESPACE=homea
|
||
|
|
||
|
psql <<EOF
|
||
|
do
|
||
|
\$\$
|
||
|
begin
|
||
|
ALTER USER $LOGIN WITH PASSWORD '$PASSWORD';
|
||
|
GRANT ALL PRIVILEGES ON DATABASE $DATABASE TO $LOGIN;
|
||
|
end
|
||
|
\$\$
|
||
|
;
|
||
|
commit;
|
||
|
EOF
|
||
|
|
||
|
|
||
|
|
||
|
kubectl create secret generic ma-db-cred \
|
||
|
--dry-run=client \
|
||
|
-o yaml \
|
||
|
--save-config \
|
||
|
--from-literal=PGUSER="$LOGIN" \
|
||
|
--from-literal=PGPASSWORD="$PASSWORD" \
|
||
|
--from-literal=PGDATABASE="$DATABASE" \
|
||
|
--from-literal=PGHOST="timescaledb.database.svc.cluster.local" \
|
||
|
--from-literal=PGSSLMODE="require" | \
|
||
|
kubectl apply -f - -n $NAMESPACE
|
||
|
|