19 lines
662 B
Bash
19 lines
662 B
Bash
#!/bin/bash
|
|
# 一次性初始化 (仅首次建库时执行): 创建 powersync bucket storage 专用用户
|
|
# PG >= 14 允许源库与 bucket storage 同实例 (powersync schema 由 service 自建)
|
|
set -e
|
|
: "${PS_STORAGE_PASSWORD:?PS_STORAGE_PASSWORD missing}"
|
|
|
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
|
|
DO \$\$
|
|
BEGIN
|
|
IF NOT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = 'powersync_storage') THEN
|
|
CREATE USER powersync_storage WITH PASSWORD '$PS_STORAGE_PASSWORD';
|
|
END IF;
|
|
END
|
|
\$\$;
|
|
GRANT CREATE ON DATABASE $POSTGRES_DB TO powersync_storage;
|
|
EOSQL
|
|
|
|
echo "[initdb] powersync_storage user ready."
|