#!/usr/bin/env bash set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" SQLITE_DB_PATH="${SQLITE_DB_PATH:-$ROOT_DIR/examples/tmp/dbtool-demo.sqlite}" SQL_FILE="$ROOT_DIR/examples/fixtures/sqlite/init.sql" mkdir -p "$(dirname "$SQLITE_DB_PATH")" if command -v sqlite3 >/dev/null 2>&1; then sqlite3 "$SQLITE_DB_PATH" < "$SQL_FILE" elif command -v node >/dev/null 2>&1; then node --no-warnings - "$SQLITE_DB_PATH" "$SQL_FILE" <<'JS' const { DatabaseSync } = require('node:sqlite'); const fs = require('fs'); const dbPath = process.argv[2]; const sqlPath = process.argv[3]; const db = new DatabaseSync(dbPath); try { db.exec(fs.readFileSync(sqlPath, 'utf8')); } finally { db.close(); } JS else python3 - "$SQLITE_DB_PATH" "$SQL_FILE" <<'PY' import pathlib import sqlite3 import sys db_path = pathlib.Path(sys.argv[1]) sql_path = pathlib.Path(sys.argv[2]) conn = sqlite3.connect(db_path) try: conn.executescript(sql_path.read_text(encoding="utf-8")) conn.commit() finally: conn.close() PY fi echo "SQLite demo data seeded into $SQLITE_DB_PATH."