3.8 KiB
3.8 KiB
✅→⚠️ PR #26 (CI-workflow orchestrator) — создан, но CI КРАСНЫЙ (требует решения)
- Dev (tokenator/claude-sonnet-4-6) сделал ровно один файл
.gitea/workflows/ci.yml(22 строки, как в ТЗ), веткаci/add-gitea-workflow, коммитb6d6b53, PR #26. Diff = 1 файл, чисто. - Workflow реально прогнался (Gitea Actions, run 541/542) → conclusion: failure (3 failed / 291 passed).
- Я проверила причину на проде (docker run, read-only volume, без .env — как в CI): падают
test_plane_webhook_creates_task,test_gitea_push_with_adr_advances_stage(+ ci_failure тест).- Корень = PRE-EXISTING дефект изоляции тестов, НЕ вина PR. Тесты лезут к живому Plane API (
plane_sync→ Connection refused в чистом окружении) → webhook-цепочка обрывается до создания задачи / доlaunch. Замокано только_create_gitea_branchи_create_initial_docs, а вызов Plane — нет. - На хосте локально они «проходят» лишь потому что там живой Plane/сеть. CI впервые честно вскрыл хрупкость.
- Корень = PRE-EXISTING дефект изоляции тестов, НЕ вина PR. Тесты лезут к живому Plane API (
- Вывод: workflow-файл КОРРЕКТЕН. Чтобы CI стал зелёным — надо ОТДЕЛЬНОЙ задачей замокать Plane API в этих 3 тестах (дефект изоляции). Либо временно исключить их из CI (xfail/skip с пометкой) — но честнее починить моки.
⚠️ РАННЕР-БАРДАК на хосте (Dev наплодил, нужна уборка — решение Славы)
Сейчас 3 процесса act_runner (инвентаризация, я НЕ убивала ничего):
- PID 3828601 —
--config config.yaml(cwd /home/slin), .runnermva154-runnerlabels [self-hosted:host]. Старый, с 19.05. - PID 3829071 —
--config /home/slin/act_runner_data/config.yaml, .runnermva154-runnerlabels [ubuntu-latest..., self-hosted:host]. Это systemdact-runner.service(ExecStart=…act_runner_data/config.yaml, WorkingDirectory=act_runner_data). Основной, рабочий. - PID 4091018 —
--config config.yaml, cwd/home/slin/act_runner_orch, .runnermva154-runner-orch. Запущен Dev'ом через nohup сегодня 21:14 — НЕ переживёт reboot, не systemd.
- Раннер #1 (3828601) — похоже легаси-дубль, тоже не под systemd.
- TODO для Славы: (а) решить нужен ли отдельный orch-раннер вообще (он global-scope, label self-hosted:host — тот же что enduro; возможно ОДНОГО systemd-раннера достаточно для обоих репо, надо проверить scope регистрации); (б) если нужен — оформить systemd unit, не nohup; (в) прибить лишние процессы 3828601 и/или 4091018. НЕ трогала сама — это инфра-изменение, требует ОК.
🎯 Статус задачи №1
- Файл CI готов и корректен, НО merge PR #26 ПРЕЖДЕВРЕМЕНЕН: смержить зелёный workflow, который сразу красит main красным из-за pre-existing тестов — плохо. Сначала почистить либо тесты (моки Plane), либо явно skip'нуть 3 теста в CI с задачей-фоллоуапом.
- Раннер привести в порядок (systemd unit вместо nohup) до того как полагаться на CI для self-hosting.