Обзор автоматизации
Зачем автоматизировать процесс разработки?
Все повторяющие действия необходимо автоматизировать. Бессмысленно тратить время на то, что может выполняться автоматически.
Данные вики специализированны под разработку на Unreal Engine.
В общем случае автоматизация затрагивает любую разработку, независимо от платформы, языка программирования, фреймворка и размера команды разработчиков.
Основные преимущества:
экономия времени и как следствие человеко-часов
уверенность в своем коде
наличие актуального билда каждый день (daily / night build)
быстрое обнаружение ошибок и моментальный фикс, а не фикс при релизе
автоматическое оповещение всех членов команды о состоянии проекта
независимость от пользовательского интерфейса программы (для UE5 данный гайд особо не поменяется)
отделение процесса разработки от сборки (вы не блокируете собственную работу, когда идет сборка)
сосредоточенность именно на написании кода, а не на инфраструктуре
наличие статистики: время сборки, тестовое покрытие и т.д.
Модельная утрированная ситуация:
Вы разрабатываете кроссплатформенный, многопользовательский проект под Win, Linux и допустим IOS. И также у вас собственная, кастомная версия движка. Два раза в день вам необходимо иметь стабильную сборку под каждую платформу, что в общем случае означает:
компиляция исходников UE
компиляция под все платформы клиентов
компиляция сервера
запуск тестов
деплой (загрузка) сервера в облако
возможно деплой на подключенные IOS девайсы (последние три модели iPhone и iPad, например)
оповещение всех мануальных тестеров и разработчиков, что билд готов (slack, почта) и отправка ссылок на все созданные билды
Теперь представьте, что это все делает вручную человек через пользовательский интерфейс и сколько это займет времени. А если он ошибется в "скрипте" сборки?
Подробнее в видео уроке
Last updated