gendesign/.forgejo/workflows
bot-backend 6caaa2bf88
All checks were successful
CI Trade-In / changes (pull_request) Successful in 19s
CI / changes (pull_request) Successful in 21s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Successful in 2m11s
CI / backend-tests (pull_request) Successful in 17m17s
fix(ci): ожидание докер-лока оставляет след в логе (#2950)
Изъян в собственном критерии приёмки #2950. Я записал: «в логе второго деплоя
видна строка ожидания лока — то есть он реально ждал первого». Но flock при
успешном захвате молчит, и такой строки не бывает. Критерий был неизмеримым:
отличить «второй дождался первого» от «они просто разошлись по времени» нечем.

Теперь сначала неблокирующая попытка:

  флаг свободен  → «докер-лок свободен, взят сразу»
  флаг занят     → «докер-лок занят соседним деплоем, жду (до 900с)…»
                   потом «докер-лок получен через Nс ожидания»
  не дождались   → прежнее сообщение с подсказкой про fuser, выход 1

Длительность печатается не для красоты: без неё непонятно, ждал деплой две
секунды или четверть часа, а это разные диагнозы — разминулись случайно или
взаимное исключение несёт реальную нагрузку.

Гейт дополнен тремя проверками (flock -n, факт ожидания, длительность).
Мутация «вернуть слепой блокирующий вызов» краснит его: 1 failed, контроль
9 passed rc=0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-20 13:17:51 +05:00
..
ci-tradein.yml fix(mera/b2c): житель Серова получал «вы вне области», а подсказки игнорировали выбранный город 2026-08-16 13:03:19 +03:00
ci.yml fix(ci): прод-деплои в одну группу concurrency — прун одного убивал pull другого (#2950) (#2952) 2026-08-20 07:47:48 +00: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(ci): ожидание докер-лока оставляет след в логе (#2950) 2026-08-20 13:17:51 +05:00
deploy.yml fix(ci): ожидание докер-лока оставляет след в логе (#2950) 2026-08-20 13:17:51 +05:00
perimeter-smoke.yml ci: смоук периметра МЕРЫ запускается сразу после деплоя (#2917) (#2922) 2026-08-19 08:13:49 +00:00
stale-claims.yml fix(stale-claims): avoid SIGPIPE 141 — pass file path не pipe 2026-05-28 01:05:56 +03:00