diff --git a/docs/superpowers/specs/2026-03-20-galaxis-agent-cicd-design.md b/docs/superpowers/specs/2026-03-20-galaxis-agent-cicd-design.md index 2dce705..cc24daa 100644 --- a/docs/superpowers/specs/2026-03-20-galaxis-agent-cicd-design.md +++ b/docs/superpowers/specs/2026-03-20-galaxis-agent-cicd-design.md @@ -47,7 +47,8 @@ checkout → uv 설치 → uv sync → pytest **상세:** #### Step: 테스트 -- ci.yml과 동일한 테스트 실행 +- uv 설치 → `uv sync --frozen` → `uv run python -m pytest --tb=short -q` +- ci.yml과 동일한 환경/명령어 - 실패 시 배포 중단 #### Step: Docker CLI + Compose 설치 @@ -63,6 +64,8 @@ checkout → uv 설치 → uv sync → pytest #### Step: 샌드박스 이미지 빌드 - `./build-sandbox.sh` 실행 +- 샌드박스 이미지는 에이전트 컨테이너가 runtime에 사용 (build-time 의존 없음) +- docker compose build 전에 실행하여 이미지 준비 #### Step: 배포 - `docker compose --project-name galaxis-agent build` @@ -70,7 +73,7 @@ checkout → uv 설치 → uv sync → pytest #### Step: Health check - 메인: `curl -sf http://localhost:8100/health` (5초 간격, 최대 60초) -- 개별: `/health/gitea`, `/health/discord`, `/health/queue`, `/health/costs` +- 개별: `/health/gitea`, `/health/discord`, `/health/queue`, `/health/costs` (Phase 3에서 구현 완료) - 실패 시 워크플로우 fail → 수동 대응 ## Gitea Secrets @@ -102,7 +105,6 @@ checkout → uv 설치 → uv sync → pytest | `SANDBOX_MEM_LIMIT` | `4g` | | `SANDBOX_CPU_COUNT` | `2` | | `SANDBOX_TIMEOUT` | `600` | -| `TEST_DATABASE_URL` | `postgresql://user:pass@postgres:5432/galaxis_test` | | `LOG_FORMAT` | `json` | | `DAILY_COST_LIMIT_USD` | `10.0` | | `PER_TASK_COST_LIMIT_USD` | `3.0` |