TGViewer
DevOps для ДевоПсов DevOps для ДевоПсов @devo_pes · 3.21K subscribers
Post #8007 237
Как вынести CI-логику из YAML в обычный скрипт

Автор CI In a Box сделал box, тонкую обёртку над SSH. Управляющий узел исполняет пользовательский скрипт, а box пересылает команды машинам с нужными ОС и процессорами. В примере box create поднимает Windows-, macOS- и Linux-раннеры, а box run клонирует репозиторий и запускает тесты.

Логику сборки можно держать в bash, языке проекта или системе сборки. На стороне CI остаются запуск скрипта и парк разнородных раннеров. Сложность никуда не исчезает: ОС обновляются, а лицензии и железо ограничивают выдачу машин с поминутной оплатой.

Если строите такой слой сами, отдельно решите передачу аргументов и очистку процессов. SSH отправляет удалённой стороне одну строку для командной оболочки и просто соединяет аргументы пробелами, что создаёт риск инъекции. После команды также не должны оставаться запущенные процессы.
matklad.github.io CI In a Box I wrote box, a thin wrapper around ssh for running commands on remote machines. I want a box-shaped interface for CI:
More from @devo_pes
  1. Sep 30, 2026Как подготовить аварийный доступ к Amazon EKS без федерации При отказе провайдера идентифи…
  2. Sep 30, 2026Как посчитать холодный старт Go-сервиса в AWS Lambda Тёплая функция может показывать p99 в…
  3. Sep 29, 2026Как сохранить редкие трейсы при ограниченном бюджете Grafana Cloud Равномерная выборка по…
  4. Sep 29, 2026Как понять, почему внутренняя платформа не стала самообслуживанием Портал, CLI и golden pa…
  5. Sep 29, 2026Защитите PostgreSQL 18 от забытых слотов репликации В PostgreSQL 18 появился idle_replicat…
  6. Sep 28, 2026Как удалённая Spectre-атака обошла защиту Cloudflare Workers Cloudflare воспроизвела удалё…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →