postgres/01-runtime-role.sh
Rama main · réplica de lectura del repositorio original.
#!/usr/bin/env bash
set -euo pipefail
: "${HIAI_APP_PASSWORD:?HIAI_APP_PASSWORD must be set before initializing PostgreSQL}"
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
--set=app_password="$HIAI_APP_PASSWORD" <<'SQL'
DO $$
BEGIN
IF NOT EXISTS (SELECT 1 FROM pg_catalog.pg_roles WHERE rolname = 'hiai_app') THEN
CREATE ROLE hiai_app WITH LOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE NOREPLICATION NOBYPASSRLS;
END IF;
END
$$;
SELECT format('ALTER ROLE hiai_app PASSWORD %L', :'app_password') \gexec
ALTER ROLE hiai_app NOSUPERUSER NOCREATEDB NOCREATEROLE NOREPLICATION NOBYPASSRLS;
ALTER ROLE hiai_app SET search_path = public, ag_catalog;
SQL