Ручные процессы сборки, подписывания и распространения мобильных приложений — это потеря времени и источник ошибок. Microsoft App Center предлагает отличный набор сервисов для сборки, тестирования и дистрибуции, но даже его можно и нужно автоматизировать дальше, чтобы добиться полноценного CI/CD (Continuous Integration and Continuous Delivery). Всего за один час вы можете настроить автоматический пайплайн, который по пушам в определенную ветку вашего репозитория будет собирать приложение, запускать тесты и рассылать билды тестерам или в магазины приложений.
Подготовительный этап (15 минут). Сначала убедитесь, что ваше приложение собирается локально без ошибок. Затем создайте в App Center новое приложение для каждой платформы (iOS и Android). В разделе «Build» подключите ваш репозиторий (GitHub, Bitbucket, Azure DevOps). Ключевой момент — настройка веток. Создайте в репо как минимум две ключевые ветки: `develop` (для тестовых сборок) и `main`/`master` (для релизных кандидатов). Именно настройка триггеров сборки по этим веткам станет основой автоматизации.
Настройка сборки для Android (20 минут). Перейдите в раздел Build для Android-приложения. Выберите ветку `develop`. В конфигурации укажите проект (например, `app/build.gradle`), вариант сборки (Debug/Release) и увеличьте версию билда автоматически — это полезная опция. Самое важное — настройка подписывания. Заранее подготовьте keystore-файл и его учетные данные. Загрузите keystore в безопасное хранилище App Center и укажите алиас и пароли. Без этого Release-сборка не будет установлена на устройства. Включите запуск тестов после сборки, если они у вас есть (например, unit-тесты).
Настройка сборки для iOS (20 минут). Процесс для iOS сложнее из-за сертификатов и профилей. Вам понадобится: Distribution Certificate (.p12 файл с приватным ключом) и Provisioning Profile для distribution (`.mobileprovision`). Их нужно получить в Apple Developer Account. Загрузите оба файла в соответствующие поля в конфигурации сборки iOS в App Center. Укажите схему (Scheme) и конфигурацию (Release). Также активируйте опцию «Sign build». Для iOS критически важно настроить корректный `Podfile`, если используете CocoaPods, чтобы зависимости устанавливались во время сборки.
Дистрибуция и завершение пайплайна (5 минут). Магия автоматизации происходит в разделе «Distribute» после успешной сборки. Создайте группу распределения, например, «Beta Testers». В настройках сборки для ветки `develop` активируйте дистрибуцию и выберите эту группу. Теперь каждый успешный билд, собранный с `develop`, автоматически появится у тестеров. Для ветки `main` можно создать отдельную группу «Stakeholders» или настроить отправку в TestFlight (через интеграцию App Center с App Store Connect) и Google Play (через службы публикации). Это уже будет шаг к Continuous Delivery.
Интеграция с внешними сервисами и скрипты. Хотя App Center предоставляет хороший визуальный конструктор, для продвинутой автоматизации могут понадобиться скрипты. Вы можете добавить пред- или пост-сборочные скрипты на bash (для iOS/macOS) или PowerShell (для Windows/Android). Например, скрипт может увеличивать версию в `Info.plist`, отправлять уведомление в Slack о старте сборки, или загружать дополнительные файлы. Также рассмотрите возможность подключения App Center к вашей системе мониторинга ошибок (как, например, Sentry) через SDK, чтобы получать крэш-репорты автоматически.
Что вы получаете через час такой настройки? Полностью автоматизированный процесс: разработчик пушит код в ветку `develop` -> App Center автоматически запускает сборку для iOS и Android -> запускает юнит-тесты (если настроены) -> подписывает билды сертификатами -> загружает артефакты -> и рассылает ссылки на установку заранее определенной группе тестеров. Вы экономите десятки минут ручной работы на каждый билд, исключаете человеческий фактор при подписывании и получаете предсказуемый и повторяемый процесс.
Дальнейшие шаги для углубления автоматизации могут включать: настройку автоматического запуска UI-тестов на реальных устройствах в облаке App Center, интеграцию с инструментами анализа кода (SonarCloud), автоматическое создание релиз-нот на основе коммитов и подключение вебхуков для обновления задач в Jira или Trello. Но даже базовая автоматизация сборки и дистрибуции, настроенная за один час, кардинально меняет workflow мобильной команды, ускоряя feedback loop и повышая качество продукта.
Автоматизация Microsoft App Center за 1 час: настраиваем CI/CD пайплайн для мобильных приложений с нуля
Пошаговое практическое руководство по настройке автоматического CI/CD пайплайна для мобильных приложений в Microsoft App Center за 60 минут. Описывается подготовка репозитория, настройка автоматических сборок для Android и iOS (включая ключевые аспекты подписывания), конфигурация автоматической дистрибуции билдов тестерам. Статья дает четкий алгоритм действий для быстрого внедрения автоматизации, экономящей время на рутинных операциях.
316
4
Комментарии (15)