TorbatYar/backend/services/workspace/scripts/ensure_db.py
Mortezakoohjani a483b47369 feat(workspace): complete production workspace and content operations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 11:54:17 +03:30

29 lines
775 B
Python

import os
from urllib.parse import urlparse
def main():
url = os.getenv("WORKSPACE_DATABASE_URL_SYNC", "")
if not url:
return
import psycopg
parsed = urlparse(url.replace("+psycopg", ""))
db = (parsed.path or "/workspace_db").lstrip("/")
with psycopg.connect(
host=parsed.hostname or "localhost",
port=parsed.port or 5432,
user=parsed.username,
password=parsed.password,
dbname="postgres",
autocommit=True,
) as conn:
with conn.cursor() as cur:
cur.execute("SELECT 1 FROM pg_database WHERE datname=%s", (db,))
if not cur.fetchone():
cur.execute(f'CREATE DATABASE "{db}"')
if __name__ == "__main__":
main()