Почему мы так работаем

Сборка iOS должна спокойно проходить на настоящем Mac

ArmRDP предоставляет в ваше распоряжение целый Mac mini. Выделенный физический узел, а не виртуальная машина: зафиксируйте инструментарий, чтобы среда выполнения каждой сборки оставалась отслеживаемой.

Мы создали этот сервис исходя из простой потребности: разработчикам нужна не ещё большая разница между средами, а Mac, который не приходится делить с повседневной разработкой и на котором можно постоянно выполнять задачи. Архивация, codesign, экспорт и runner должны работать в одной контролируемой среде — чтобы перед релизом не выяснять, какой именно инструментарий успел измениться.

Аренда от одного дня — от $21.1 в день. Фактическая доступность отображается в консоли в реальном времени.

Целиком в вашем распоряжении

Выделенный Mac — это не просто пометка в описании тарифа

Контроль над средой сборки начинается с того, кому принадлежат ресурсы. Мы не делим один Mac между арендаторами и не заменяем физический узел виртуальной машиной.

Машина не используется совместно с другими арендаторами

Весь срок аренды Mac mini используете только вы. Унифицированная память, SSD и процессор входят в состав одного устройства, а не выделяются в виде квоты на общем хосте.

Это не значит, что все задачи стоит запускать одновременно. Параллельные сборки по-прежнему конкурируют за память и место на диске, поэтому число параллельных задач runner следует выбирать по результатам тестирования проекта.

Понятные границы физических ресурсов

Нативная работа — без слоя виртуализации

Xcode, симулятор и Metal работают на физическом узле с macOS. Графический интерфейс удобен для поиска проблем во взаимодействии, а командная строка — для архивации, подписи и автоматизации.

Мы предоставляем среду выполнения, но не гарантируем фиксированную скорость компиляции для конкретного проекта. Время выполнения зависит от загрузки зависимостей, попаданий в кэш и объёма тестов.

Не виртуальная машина

Все изменения остаются отслеживаемыми

Выберите и зафиксируйте версию Xcode, а затем зарегистрируйте узел как self-hosted runner для GitLab или GitHub Actions. Так конвейер сборки будет запускаться в нужной среде.

Рекомендуем фиксировать версию Xcode, lock-файл зависимостей, метки runner и параметры сборки. Перед обновлением проверьте изменения, и только потом переключайте рабочие задачи — не меняйте среду в разгар выпуска.

Среда под контролем команды
Расположение площадок

Пять площадок для удобной работы и выполнения задач

Сингапур, Япония (Токио), Южная Корея (Сеул), Гонконг и запад США. Площадки расположены так, чтобы команды в разных регионах могли выбрать ближайшую, а runner — работать ближе к репозиториям и хранилищам артефактов проекта.

SG · UTC+8

Сингапур

Для совместной работы в Юго-Восточной Азии. Подходит командам, которым нужны ручная отладка и автоматические сборки на одном узле.

Перед выбором проверьте, где находятся репозиторий и хранилище артефактов.
JP · UTC+9

Япония (Токио)

Для команд в Восточной Азии. Удобно удалённо проверять Xcode и симулятор в обычное рабочее время.

Качество работы с графическим интерфейсом проверьте на своём подключении.
KR · UTC+9

Южная Корея (Сеул)

Для совместной работы в Северо-Восточной Азии. Региональная площадка для повседневной разработки, проверки подписи и отладки runner.

Работу в терминале и очередь сборок можно оценить отдельно.
HK · UTC+8

Гонконг

Для команд из Южного Китая и Юго-Восточной Азии. Подходит для рабочих процессов, где нужно часто проверять среду сборки через демонстрацию экрана.

Близость — хорошая отправная точка, но она не заменяет проверку подключения.
US-W · UTC−8 / −7

Запад США

Для совместной работы на западном побережье Северной Америки. Выбирайте площадку с учётом расположения репозитория, источников зависимостей и маршрута загрузки артефактов.

Местный часовой пояс меняется при переходе на летнее время.

При выборе площадки учитывайте два маршрута

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

Гарантия доступности

Гарантия выражена в цифрах, порядок действий тоже описан

Все площадки работают 365 дней в году. Ниже описаны целевой показатель сервиса и правила компенсации — это не отчёт по историческому мониторингу и не гарантия успеха отдельной сборки.

Гарантия месячной доступности

99,9%

При расчёте за 30 дней допустимый простой — около 43 минут

30 × 24 × 60 × 0,1% = 43,2 минуты

За превышение лимита — компенсация временем обслуживания

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

Подайте заявку в течение 7 дней

Войдите в консоль и создайте обращение. Укажите номер хоста, затронутый период и часовой пояс, приложите ошибку подключения или журнал задачи. Сохраняйте исходные записи: они помогут проверить работу сервиса за тот же период.

Границы ответственности при форс-мажоре и действиях пользователя, а также порядок подачи заявок и компенсации определяются условиями сервиса.

Данные и изоляция

На время аренды Mac только ваш; после её окончания данные не остаются следующему пользователю

Мы не открываем и не анализируем пользовательские файлы и код на арендованном хосте. Выделенный физический узел чётко разграничивает арендаторов, однако команда по-прежнему должна управлять учётными данными, резервными копиями и правами CI: физическая изоляция не заменяет эти меры.

  1. Экспортируйте данные до окончания аренды

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

  2. Стирание данных после окончания аренды

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

  3. Проверка перед повторной передачей

    После стирания данных и сброса среды хост готовят к следующей передаче. Также отзовите регистрацию старого runner и токены доступа на своей CI-платформе, а учётные данные, использовавшиеся на хосте, замените. Стирание диска не отзывает права доступа к внешним сервисам.

В обращении указывайте только то, что нужно для диагностики

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

Наши принципы

Сначала факты — затем ваш выбор

Мы предлагаем только аренду выделенных физических Mac. Рекомендации по выбору должны опираться на характеристики, стоимость или порядок работы, а не на обещания, что что-то будет «быстрее».

Все цифры открыты

Отдельно указаны чип, унифицированная память, SSD, цены за разные периоды и доступность площадок. Демонстрационные сценарии обозначены как примеры, а не как данные мониторинга; результаты одного проекта не выдаются за гарантию производительности для всех команд.

Характеристики можно проверить

Цены без сюрпризов

Для аренды на день, неделю, месяц и квартал указаны отдельные цены; расширение хранилища и Thunderbolt 5 также оплачиваются отдельно. Оплата — только в долларах США: USDT-TRC20, Visa, Mastercard или Amex через Stripe. Фактическая доступность способов оплаты определяется ответом интерфейса платёжного шлюза.

Каждая услуга указана отдельно

Документация важнее обещаний

Сначала объясняем, как подключиться, зафиксировать инструментарий и зарегистрировать runner, и только потом обсуждаем, сколько машин добавить. Запустите первый конвейер сборки, зафиксируйте время выполнения задач и расход ресурсов, а затем решайте, повысить конфигурацию одной машины или добавить узлы для параллельной работы.

Сначала проверка, затем масштабирование

Начните со сборки, которую можно воспроизвести

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