Files
AiVideo/scripts/dev_local.sh
2026-03-18 17:36:07 +08:00

47 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# Local development helper (Docker-first).
# - mock mode: no ComfyUI / no OpenAI key required (uses fallback scenes)
# - comfy mode: assumes ComfyUI is running on host at :8188
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT_DIR"
MODE="${1:-mock}" # mock | comfy
PROMPT="${2:-写一个温暖的城市夜景故事}"
CONFIG_PATH="${CONFIG_PATH:-./configs/config.yaml}"
echo "[dev] building image..."
docker compose build
if [[ "$MODE" == "mock" ]]; then
echo "[dev] run mock pipeline..."
docker compose run --rm \
-e OPENAI_API_KEY="${OPENAI_API_KEY:-}" \
-e OPENAI_BASE_URL="${OPENAI_BASE_URL:-}" \
aivideo \
python main.py --config "$CONFIG_PATH" --prompt "$PROMPT" --mock
echo "[dev] done. output: ./final_poc.mp4"
exit 0
fi
if [[ "$MODE" == "comfy" ]]; then
echo "[dev] checking ComfyUI connectivity (host.docker.internal)..."
docker compose run --rm aivideo python scripts/check_comfy.py --base-url http://host.docker.internal:8188 >/dev/null
echo "[dev] run comfy pipeline..."
echo "[dev] NOTE: set app.comfy_base_url=http://host.docker.internal:8188 in configs/config.yaml"
docker compose run --rm \
-e OPENAI_API_KEY="${OPENAI_API_KEY:-}" \
-e OPENAI_BASE_URL="${OPENAI_BASE_URL:-}" \
aivideo \
python main.py --config "$CONFIG_PATH" --prompt "$PROMPT"
echo "[dev] done. output: ./final_poc.mp4"
exit 0
fi
echo "[dev] unknown mode: $MODE (use: mock | comfy)" >&2
exit 2