Руководство

Альтернатива Xcode Cloud, которая сохраняет ваш пайплайн

Xcode Cloud это хороший продукт. Он глубоко связан с инструментами Apple, а оплата идёт за вычислительные часы. Если ваш пайплайн уже живёт в GitHub Actions и вам нужна предсказуемая стоимость, выделенный раннер macOS даёт другой набор плюсов и минусов. Его стоит понимать.

Главное отличие

Xcode Cloud продаёт управляемые часы сборки внутри экосистемы Apple, с плотной интеграцией App Store Connect и TestFlight. MacRun продаёт машину. Первый вариант оптимизирован под интеграцию и нулевую настройку. Второй под предсказуемую стоимость и сохранение пайплайна, который у вас уже есть.

  • Оплата. Xcode Cloud тарифицирует вычислительные часы в месяц по уровням. MacRun стоит фиксированные $139 в месяц с неограниченными минутами.
  • Описание workflow. Workflow Xcode Cloud настраиваются в Xcode и App Store Connect. MacRun выполняет ваш существующий YAML для GitHub Actions без изменений, кроме метки раннера.
  • Контроль окружения. В Xcode Cloud образом управляет Apple. На выделенной машине вы сами фиксируете версии Xcode и ставите любые нужные инструменты.
  • Кэширование. Xcode Cloud кэширует сам. Выделенная машина по умолчанию хранит всё на локальном SSD.

Когда Xcode Cloud лучше

Выбирайте Xcode Cloud, если хотите, чтобы раздача через TestFlight и интеграция с App Store Connect работали без вашего участия. Или если ваша команда живёт в Xcode, а не в конфигах CI. Или если вы хотите, чтобы всей средой сборки владела Apple. Это настоящие преимущества, и мы не будем делать вид, что это не так.

Когда лучше выделенный раннер

Выбирайте выделенный раннер macOS, если ваш CI уже работает в GitHub Actions и переносить его не хочется. Или если из-за объёма сборок почасовая оплата становится непредсказуемой. Или если на сборочной машине нужны свои инструменты. Или если вы хотите зайти по SSH и отладить упавшую сборку напрямую.

Сравните цифры в калькуляторе или прочитайте сравнение с hosted раннерами GitHub.

Частые вопросы

Какая есть хорошая альтернатива Xcode Cloud?

+

Для команд, которые уже работают в GitHub Actions, ближе всего выделенный self-hosted раннер macOS. Он сохраняет ваш текущий пайплайн. Если нужен интерфейс для сборок, альтернативами будут управляемые платформы Codemagic и Bitrise.

Xcode Cloud дешевле выделенного раннера на Mac?

+

Зависит от объёма и от того, насколько предсказуемым должен быть счёт. Xcode Cloud продаёт уровни вычислительных часов в месяц, поэтому стоимость растёт с нагрузкой. Выделенная машина стоит фиксированные $139 в месяц, сколько бы минут вы ни использовали.

Можно ли использовать GitHub Actions и Xcode Cloud вместе?

+

Да, команды часто гоняют тесты в GitHub Actions, а Xcode Cloud используют для раздачи через TestFlight. Если вы сводите всё в одно место, решает обычно один вопрос. Хотите ли вы сами владеть описанием пайплайна или отдать его Apple.

Уход с Xcode Cloud означает переписать workflow?

+

Переход на self-hosted раннер macOS в GitHub Actions означает один раз описать шаги сборки в YAML. Если пайплайн уже в GitHub Actions, меняются две строки, которые указывают на новый раннер.

Похожие руководства