Отчёт о прогрессе · TechCon ML · 06.07.2026 — 08.09.2026

Механизм автоматической развёртки

Один общий шаг публикации прод-версии для нескольких сервисов флота — важный шаг стандартизации: способ выкладки на боевую карту больше не изобретается заново для каждого сервиса.

4
реальных потребителя
подтверждено живым замером, не оценкой на глаз
2
варианта транспорта
под разные способы доставки на боевую карту
23
коммита
за 64 дня истории
5
собственных CI-проверок
механизм проверяет сам себя так же строго, как любой сервис флота
Что это

Один механизм распространения вместо N собственных

Составное GitHub Action — общий, переиспользуемый шаг публикации: сборка, доставка на боевую карту, перезапуск сервиса. Любой сервис флота, которому нужна выкладка на GPU-карту, подключает этот шаг вместо того, чтобы писать и поддерживать собственный скрипт с нуля.

Правила выкладки — единый, автоматически инфорсящийся контракт: способ доставки на карту меняется один раз, в одном месте, и сразу для всех потребителей сразу, а не для каждого сервиса отдельно и с задержкой.

Реальный охват

Четыре сервиса, не три — охват уточнён живой проверкой

Более ранняя оценка называла три подтверждённых потребителя механизма. Прямая проверка кода на боевой ветке — не повторение старой оценки — нашла четвёртого: витрина 3D-моделей домов тоже публикуется через него.

4
сервиса используют механизм в прод-выкладке
8
рабочих процессов CI подключают механизм
1
общий источник правды на всех потребителей
Хронология вех

От выкладки одного сервиса до общего, автоматически инфорсящегося механизма флота

06.07.2026

Механизм заложен

Первая версия составного действия — под конкретный, единственный на тот момент сервис, на базе типового шага сборки и доставки.

20.07.2026

Конфигурация — через переменные окружения

Параметры выкладки передаются между шагами через переменные окружения, а не текстовой подстановкой в шаблон — архитектурное решение, закрывающее целый класс проблем сразу, а не точечно.

26.08.2026

Приведён в соответствие с политикой организации

Способ доставки переведён на вариант, разрешённый общим для всей организации списком допустимых действий — без снижения строгости самой политики.

01.09.2026

Цепочка переподключения доведена до надёжного end-to-end выполнения

Сценарий выкладки, переподключающийся по SSH в несколько слоёв, доводит перезапуск сервиса до конца надёжно на любом числе промежуточных подключений.

02.09.2026

Второй вариант транспорта добавлен

Появился альтернативный способ доставки для сервисов с другой схемой размещения — контейнерный оркестратор, без замены первого варианта.

06.09.2026

Четвёртый потребитель подключён

Витрина 3D-моделей домов переведена на общий механизм выкладки наравне с остальными тремя сервисами.

08.09.2026

Собственный CI-контур расширен до пяти проверок

Механизм проверяет сам себя перед каждым изменением так же строго, как любой сервис флота проверяет себя перед выкладкой.

Почему устроено именно так

Два варианта транспорта под разную схему размещения

Прямая доставка на карту
для сервисов, размещённых напрямую на боевой GPU-машине
значения передаются через переменные окружения, не подстановкой в шаблон
Доставка через контейнерный оркестратор
для сервисов, размещённых в общем контейнерном контуре
та же дисциплина передачи значений — переменные окружения, не текстовая подстановка
Куда движемся дальше

Автоматическая синхронизация вспомогательных скриптов

Один из двух вариантов транспорта использует набор вспомогательных скриптов, скопированных в само действие вручную. Следующий шаг — сделать эту синхронизацию автоматической, чтобы вручную скопированная копия не могла незаметно разойтись с исходной.