def create_firestore_db()

in env_setup.py [0:0]


def create_firestore_db(firestore_region=FIRESTORE_REGION,firestore_database="opendataqna-session-logs"):

    # Check if Firestore database exists
    database_exists_cmd = [
        "gcloud", "firestore", "databases", "list", 
        "--filter", f"name=projects/{PROJECT_ID}/databases/{firestore_database}", 
        "--format", "value(name)"  # Extract just the name if found
    ]

    database_exists_process = subprocess.run(
        database_exists_cmd, capture_output=True, text=True
    )
    
    if database_exists_process.returncode == 0 and database_exists_process.stdout:
        if database_exists_process.stdout.startswith(f"projects/{PROJECT_ID}/databases/{firestore_database}"):
            print("Found existing Firestore database with this name already!")
        else:
            raise RuntimeError("Issue with checking if the firestore db exists or not")
    else:
        # Create Firestore database
        print("Creating new Firestore database...")
        create_db_cmd = [
            "gcloud", "firestore", "databases", "create", 
            "--database", firestore_database,
            "--location", firestore_region,
            "--project", PROJECT_ID
        ]
        subprocess.run(create_db_cmd, check=True)  # Raise exception on failure

        # Potential wait for database readiness (optional)
        time.sleep(30)  # May not be strictly necessary for basic use