22 lines
780 B
Bash
Executable File
22 lines
780 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
sleep 20
|
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
|
|
DO
|
|
\$block\$
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT FROM pg_catalog.pg_roles WHERE rolname = '${ZBX_DB_USERNAME_RO}'
|
|
)
|
|
THEN
|
|
RAISE NOTICE 'Role ''${ZBX_DB_USERNAME_RO}'' already exists. Skipping ...';
|
|
ELSE
|
|
CREATE ROLE "${ZBX_DB_USERNAME_RO}" WITH PASSWORD '${ZBX_DB_USERNAME_PW}';
|
|
GRANT CONNECT ON DATABASE "${POSTGRES_DB}" TO "${ZBX_DB_USERNAME_RO}";
|
|
GRANT SELECT ON ALL TABLES IN SCHEMA public TO "${ZBX_DB_USERNAME_RO}";
|
|
END IF;
|
|
END
|
|
\$block\$;
|
|
EOSQL
|