# Postgres for Kube ## Pre-deploy ### Secrets ```bash kubectl create secret generic postgres --from-literal=POSTGRES_USER=postgres --from-literal=POSTGRES_PASSWORD=$(python -c "import secrets; print(secrets.token_urlsafe(64))") kubectl create secret generic pgadmin --from-literal=PGADMIN_DEFAULT_EMAIL=postgres --from-literal=PGADMIN_DEFAULT_PASSWORD=$(python -c "import secrets; print(secrets.token_urlsafe(64))") ``` ## Deploy Postgres ### Test ```bash helm template postgres ./postgres | kubectl --context test-casepipeline apply -f - ``` ### Prod ```bash helm template postgres ./postgres | kubectl --context prod-casepipeline apply -f - ``` ### Get Password ```bash kubectl get secret postgres --output=jsonpath='{.data.POSTGRES_PASSWORD}' | base64 --decode ``` ## Deploy PG Admin ### Test ```bash prefix= helm template pgadmin ./pgadmin --set host=$prefix-pgadmin.apps-test.aws.e1.nwie.net | kubectl --context test-casepipeline apply -f - ``` ### Prod ```bash prefix= helm template pgadmin ./pgadmin --set host=$prefix-pgadmin.apps.aws.e1.nwie.net | kubectl --context prod-casepipeline apply -f - ``` ### Login ```bash kubectl get secret pgadmin --output=jsonpath='{.data.PGADMIN_DEFAULT_PASSWORD}' | base64 --decode ```