Top.Mail.Ru
 

Автоматизация сборки Unity‑проекта (Android, сервер, Windows) для GameDev компании

Задача:

Требовалось наладить reproducible‑сборки Unity‑проекта (Android, Linux сервер и Windows‑клиент) в Jenkins, при этом решить проблемы с XR‑плагином, временем сборки, регулярным исчерпанием емкости диска и отказом сборки с segfault.

Решение:

Мы разобрались с процессом сборки сцен, выявили и устранили ошибки при вызовах XR‑плагина и настроили серверную сборку, включая отключение лишних диалоговых окон и ограничение количества сцен. Написали скрипт сборки для серверной части, устранили проблему с параметрами, передаваемыми извне в скрипты и провели серию тестовых сборок.
Параллельно в Jenkins оптимизировали пайплайны: уменьшили число очисток workspace для ускорения обновления кода и повторных сборок, реализовали распараллеливание сборки клиентов и сервера, диагностировали и решили проблемы отказа сборки с segfault, исчерпанием диска, поиском Unity‑лицензий. Для Android‑сборок были найдены и исправлены ошибки при подписи кода.

Результат:

Unity‑билды стали запускаться из Jenkins по расписанию и по запросу, с понятным временем выполнения и контролируемыми точками отказа. Команда получила рабочие сценарии для сборки Android‑APK, серверной части и Windows‑клиента, а также документацию по их запуску и диагностике.

Метрики проекта:

  • Автоматизировали весь процесс сборки игровых клиентов (Android, Windows) и серверной части в Jenkins;
  • Повысили успешность сборок до более чем 95%, устранив проблемы с XR-плагинами, Android Signing, нехваткой дискового пространства;
  • Сократили время сборки на 20–40% за счет оптимизации Jenkins Pipeline, уменьшения числа очисток workspace и настройки параллельного выполнения задач;
  • Снизили количество сбоев сборочного процесса на 70–90%.
  • Обеспечили воспроизводимость сборки для всех поддерживаемых платформ.
Обсудить проект _
Если у вас есть ИТ-проблема , оставьте свои контакты, и мы поможем правительству спланировать ее решение . Обещаем не рассылать спам.
hello@softwarecats.dev
Новосибирск, ул. Демакова
23/5, оф.308
Контакты _

Еще про наши проекты: