gendesign/.forgejo/workflows
bot-backend bb6e5c7e41
All checks were successful
CI Trade-In / changes (pull_request) Successful in 7s
CI / changes (pull_request) Successful in 8s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
fix(tradein/deploy): не уходить в drain, когда пересоздавать нечего (#2679)
`SCRAPER_RECREATE` истинно и на infra-правках (compose / workflow / deploy/**),
а те почти всегда собирают тот же образ по кэшу: digest не меняется, `up -d`
выходит no-op — и за него платили пятиминутным ожиданием слива scrape_runs,
прерывая сбор. Теперь после `docker compose pull` (порядок важен: до pull'а под
:latest ещё старый образ) сравниваем ID подтянутого образа с тем, на котором
бежит tradein-scraper. Совпало — печатаем «пересоздавать нечего» и идём дальше
без drain'а; не совпало или контейнера/тега нет — drain как раньше.

Заодно закрыт ложный startup-reap: чекпоинт и reap завязаны на тот же признак и
больше не выполняются, когда recreate'а не было. Иначе прогон, переживший
таймаут drain'а в НЕ пересозданном контейнере, помечался бы 'cancelled',
продолжая работать.

scraper остаётся в $SERVICES в обоих случаях — при совпавшем образе `up -d`
no-op, но правка самого compose (env/лимиты сервиса) так всё же доезжает.

Сверка образов: «контейнера нет» и «контейнер отстал» теперь разные сообщения —
это разные аварии и чинятся по-разному; отсутствие tradein-backend (эталона)
тоже отдельная строка.

Refs #2679
2026-08-06 01:58:34 +05:00
..
ci-tradein.yml chore(mera-public): isolation guard + favicon + Caddy handle (#2631) (#2644) 2026-08-05 06:20:40 +00:00
ci.yml chore(ci+rbac): auth/** в paths-фильтры + «Поиск домов» только у админа 2026-07-31 20:24:24 +03:00
deploy-obsidian.yml fix(devops): переносим deploy-obsidian.yml в .forgejo/workflows/ (#2416) (#2439) 2026-07-05 15:34:55 +00:00
deploy-tradein.yml fix(tradein/deploy): не уходить в drain, когда пересоздавать нечего (#2679) 2026-08-06 01:58:34 +05:00
deploy.yml feat(auth): отдельная БД auth — фундамент единого входа «Меры» и «Птицы» 2026-07-31 21:47:33 +03:00
perimeter-smoke.yml feat(mera/b2c): публичный периметр на отдельном домене meraocenka.ru — этап 1 из 8 (#2545) 2026-08-02 12:51:46 +00:00
stale-claims.yml fix(stale-claims): avoid SIGPIPE 141 — pass file path не pipe 2026-05-28 01:05:56 +03:00