gendesign/scripts
bot-backend c485fc1d9e
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 / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Successful in 1m22s
CI / openapi-codegen-check (pull_request) Successful in 2m30s
CI / backend-tests (pull_request) Successful in 15m29s
ci: гейт против публикации занятых на VPS портов в workflow (#2757)
Раннер запускает и job, и сервис-контейнеры с `--network host` (проверено:
NetworkMode=host у job-контейнеров), а на хосте слушают боевые сервисы.
Поэтому `services: postgres` + `ports: 5432:5432` не поднимает тестовую БД,
а уводит сборку в БОЕВОЙ Postgres: занять порт контейнер не может, и
`localhost:5432` из job'а — прод. В #2745 спасло несовпадение пароля.

scripts/check-workflow-ports.py ловит публикацию занятого порта в любой форме
(`ports:` блоком, инлайн-списком, `docker run -p/--publish`) и роняет сборку.
Список портов — замер `ss -ltnp` на bot-server 2026-08-06, не догадки:
22, 53, 80, 443, 2222, 3000, 5432, 8000. Redis/CouchDB/GlitchTip в список НЕ
попали: они на хосте не слушают (bridge-сети, порты без публикации), запрет
ронял бы сборку на ровном месте.

Шаг встроен в changes-job ci.yml — тот и так бежит на каждом PR и уже сделал
checkout, отдельный слот дефицитного раннера не занимается.

Заодно снят капкан в шапке ci.yml: комментарий «FUTURE: добавить service —
см. .github/workflows/ci.yml как образец» указывал ровно на анти-пример
(`ports: 5432:5432`), безвредный там лишь потому, что GitHub Actions у нас не
исполняется. Теперь он указывает на рабочий способ из ci-tradein.yml.

Refs #2757, #2745
2026-08-07 02:23:27 +05:00
..
auth fix(ops): repair broken main-DB backup + harden auth scripts/docs (#71 #427 #429 #428) 2026-06-13 20:13:04 +05:00
claude-hooks chore(claude): security hardening — dangerous-commands hook, settings в git, restricted DB, throttle (#2150) 2026-07-02 15:23:11 +00:00
bootstrap_glitchtip.sh fix(infra): bootstrap_glitchtip — \gexec instead of DO block (psql var trap) (#219) 2026-05-16 15:54:29 +00:00
bootstrap_schema_migrations.sh feat(infra): auto-apply data/sql/*.sql migrations in deploy pipeline (#150) (#151) 2026-05-15 08:06:54 +03:00
build_osrm.sh feat(analyze): per-category OSRM routing (foot vs driving) (#39 A3) 2026-06-27 04:30:25 +05:00
check-workflow-ports.py ci: гейт против публикации занятых на VPS портов в workflow (#2757) 2026-08-07 02:23:27 +05:00
cleanup-merged-worktrees.sh fix(devops): cleanup-merged-worktrees.sh — 3 бага, найденные вживую на 69 забытых worktree (#2418) 2026-07-04 13:00:14 +00:00
cleanup-stale-claims.sh chore(claude): extend self-extending tripwire + pause-bots guard for stale-claims 2026-05-29 17:36:20 +03:00
cleanup-worktrees-aggressive.py fix(week-review): автофиксы код-ревью — 169 issue (label «week ревью 1») 2026-06-15 20:21:11 +05:00
cleanup_ghosts.py fix(week-review): автофиксы код-ревью — 169 issue (label «week ревью 1») 2026-06-15 20:21:11 +05:00
migrate_kg_to_obsidian.py fix(week-review): автофиксы код-ревью — 169 issue (label «week ревью 1») 2026-06-15 20:21:11 +05:00
setup-bot-env.ps1 feat(claude): env-vars refactor + stale-claim cron (Phase 2 finalization) 2026-05-28 00:24:45 +03:00
setup-couchdb.sh feat(deploy): split obsidian stack from main + path-filtered GHA 2026-05-11 09:51:31 +03:00
smoke-mera-perimeter.sh feat(mera/b2c): публичный периметр на отдельном домене meraocenka.ru — этап 1 из 8 (#2545) 2026-08-02 12:51:46 +00:00
start-analyst.ps1 chore(bots): per-role launcher scripts + move bot pipeline to forgejo MCP 2026-05-30 10:38:10 +03:00
start-backend.ps1 chore(bots): per-role launcher scripts + move bot pipeline to forgejo MCP 2026-05-30 10:38:10 +03:00
start-bot.ps1 chore(agents): reviewer back to Opus (revert model-part of aa3d012) 2026-05-31 17:16:57 +03:00
start-frontend.ps1 chore(bots): per-role launcher scripts + move bot pipeline to forgejo MCP 2026-05-30 10:38:10 +03:00
start-qa.ps1 chore(bots): per-role launcher scripts + move bot pipeline to forgejo MCP 2026-05-30 10:38:10 +03:00
start-reviewer.ps1 chore(bots): per-role launcher scripts + move bot pipeline to forgejo MCP 2026-05-30 10:38:10 +03:00