4.6 KiB
deploy_status, timestamp, work_item, branch, commit, target_service, target_port, deploy_mode, staging_gate, prod_container_restarted, rebuild_required
| deploy_status | timestamp | work_item | branch | commit | target_service | target_port | deploy_mode | staging_gate | prod_container_restarted | rebuild_required |
|---|---|---|---|---|---|---|---|---|---|---|
| SUCCESS | 2026-06-06T10:20:38Z | ORCH-042 | feature/ORCH-042-telegram-live-tracker-bump | 753eea37fc |
orchestrator | 8500 | artifact-only | SUCCESS | false | true |
Deploy Log — ORCH-042
Verdict
deploy_status: SUCCESS — артефактный (artifact-only) деплой-вердикт.
Реальный git pull + docker compose ... --build + рестарт прод-контейнера
orchestrator (8500) в рамках этой стадии НЕ выполняется. Он делегирован
хуку scripts/orchestrator-deploy-hook.sh (ORCH-36), который запускается
Владельцем после мерджа ветки feature/ORCH-042-telegram-live-tracker-bump
в main. Guardrail: агент никогда не перезапускает общий прод-инстанс внутри
ORCH-задачи — это self-hosting групповой риск (CLAUDE.md / INFRA.md
§Self-hosting): рестарт прод-орка остановил бы конвейер ВСЕХ проектов.
Pre-conditions (все ✓)
| Артефакт | Поле | Значение |
|---|---|---|
12-review.md |
verdict |
APPROVED |
13-test-report.md |
result |
PASS |
15-staging-log.md |
staging_status |
SUCCESS (10/10 staging-checks, прогон внутри orchestrator-staging :8501) |
04-test-plan.yaml |
— | покрывает AC задачи |
| ADR | 06-adr/ADR-001-tracker-bump-mode.md |
заведён |
CHANGELOG.md |
— | обновлён |
Стадия deploy достижима только потому, что условный staging-гейт
(check_staging_status, реальный для self-hosting repo=orchestrator) — зелёный.
Change scope — почему нужен rebuild+restart (но не сейчас)
ORCH-042 меняет рантайм-код src/, который копируется в образ (/app/src)
и исполняется прод-процессом — значит для вступления в силу на проде нужен
rebuild + restart контейнера:
| Файл | Тип | Как доезжает до прода |
|---|---|---|
src/notifications.py |
runtime (в образе) | требует rebuild + restart контейнера |
src/config.py |
runtime (в образе) | требует rebuild + restart контейнера |
.env.example |
дескриптор | реальные значения — в .env на хосте (не в гит) |
docs/**, CHANGELOG.md |
docs | мерж в main |
tests/** |
тесты, не деплоятся | n/a |
rebuild_required: true. Изменения добавляют режим bump live-tracker'а
Telegram (карточка перемещается вниз при обновлении) + русификацию текста
уведомлений; они активируются новыми env-флагами (см. .env.example).
Чтобы новое поведение вступило в силу на проде, прод-инстанс orchestrator
(8500) должен быть пересобран и перезапущен Владельцем через деплой-хук
после мерджа — не данным агентом.
Deploy-хук (выполняет Владелец после мерджа в main)
# на хосте mva154, прод-таргет (порт 8500, profile отсутствует → default)
TARGET_SERVICE=orchestrator \
TARGET_PORT=8500 \
TARGET_IMAGE=orchestrator-orchestrator \
COMPOSE_PROFILE= \
scripts/orchestrator-deploy-hook.sh --deploy
Хук: снимает снапшот текущего образа → git pull origin main → перезапуск
сервиса → health-check (10×6s, до 60s по GET /health) → при провале
авто-rollback на предыдущий образ. Прод-env-флаги bump-режима выставляются
в .env на хосте до перезапуска.
⚠️ Self-hosting: rebuild прод-орка = групповой риск (общая БД + очередь с enduro-trails). Деплой проводить в окно низкой активности конвейера; страховка — авто-rollback хука и зелёный staging-гейт (8501).