#!/bin/sh bindir=$(dirname "$(readlink -fm "$0")") source "${bindir}/../.env" if [ -z $POSTGRES_REALTIME_PASSWORD ]; then echo "POSTGRES_REALTIME_PASSWORD was missing in env" exit 5 fi ## Create the futureporn Strapi database kubectl -n futureporn exec postgres -- psql -U postgres --command "\ CREATE DATABASE futureporn_db \ WITH \ OWNER = postgres \ ENCODING = 'UTF8' \ LOCALE_PROVIDER = 'libc' \ CONNECTION LIMIT = -1 \ IS_TEMPLATE = False;" ## Create the futureporn realtime database (for NOTIFY/AWAIT pubsub) kubectl -n futureporn exec postgres -- psql -U postgres --command "\ CREATE DATABASE futureporn_realtime \ WITH \ OWNER = postgres \ ENCODING = 'UTF8' \ LOCALE_PROVIDER = 'libc' \ CONNECTION LIMIT = -1 \ IS_TEMPLATE = False;" ## create futureporn user kubectl -n futureporn exec postgres -- psql -U postgres --command "\ CREATE ROLE futureporn \ WITH \ LOGIN \ NOSUPERUSER \ NOCREATEDB \ NOCREATEROLE \ INHERIT \ NOREPLICATION \ NOBYPASSRLS \ CONNECTION LIMIT -1 \ PASSWORD '$POSTGRES_REALTIME_PASSWORD';" ## grant futureporn user all privs kubectl -n futureporn exec postgres -- psql -U postgres --command "\ GRANT ALL PRIVILEGES ON DATABASE futureporn_realtime TO futureporn;" ## import schema ## I have a file, schema.psql that I want to import. How do I do that? # kubectl -n futureporn exec postgres -- psql -U postgres --command "\ ;" kubectl -n futureporn exec postgres -- psql -U postgres -f - < "${bindir}/postgres-2024-05-09-futureporn_db-schema-only.psql"