От выдачи устройства до артефакта архива

Понятный путь к первой облачной сборке iOS

MiniRents предоставляет выделенные физические машины: ресурсы устройств не распределяются между арендаторами, и это не виртуальные машины. Руководство начинается с подготовки доступа к репозиторию, публичного SSH-ключа и материалов подписи, а затем помогает выбрать регион, подключиться удалённо, проверить Xcode, экспортировать архив и выполнить очистку после задачи.

2 модели в продаже 5 доступных регионов 4 варианта аренды
Путь первой сборки ГОТОВО
01
Подготовьте доступы и материалыРепозиторий, SSH, материалы подписи
02
Выберите устройство и регионКонфигурация, расположение, срок
03
Подключитесь и проверьте окружениеSSH, Xcode, хранилище
04
Архивируйте, передайте, очиститеПроверка артефактов и удаление учётных данных
Шаг 1
Проверка перед началом

Заранее подготовьте все доступы и материалы сборки

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

Доступ к репозиторию

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

  • Проверьте доступ к основному репозиторию и подмодулям
  • Зафиксируйте источники зависимостей и версии в lock-файлах
  • Подготовьте краткосрочный отзывный токен репозитория

Материалы разработки и подписи

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

  • Проверьте действительность сертификатов и provisioning-профилей
  • Подготовьте конфигурацию ExportOptions
  • Определите действия по удалению после завершения сборки

Публичный SSH-ключ

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

  • Используйте отдельный ключ для каждого назначения устройства
  • Разрешите чтение файла приватного ключа только владельцу
  • Не отправляйте приватный ключ через тикеты или электронную почту
Лёгкие и стандартные сборки

MiniRents M4

M4 · 16GB · 256GB

день$21.5 неделя$58.1 месяц$107.5 квартал$292.4

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

Выбрать MiniRents M4
Высокая параллельность и тяжёлые нагрузки

MiniRents M4 Pro

M4 Pro · 64GB · 2TB

день$59.6 неделя$160.8 месяц$297.8 квартал$810

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

Выбрать MiniRents M4 Pro
Граница выбора:Обе конфигурации — выделенные физические машины. Различия влияют главным образом на параллельность, объём кэша зависимостей и запас для крупных проектов, но не меняют процесс удалённого подключения и управления через консоль. Все цены указаны в долларах США (USD).
Шаг 2
Выберите регион и срок

Выбор с учётом расположения команды, репозитория и длительности задач

Доступны Сингапур, Япония (Токио), Южная Корея (Сеул), Гонконг и восток США. Обе модели доступны во всех пяти регионах; фактический статус отображается в консоли в реальном времени.

Сравнение пяти регионов
Регион Для каких команд подходит Что проверить при выборе
Сингапур Команды из Юго-Восточной Азии и региональные репозитории Маршрут подключения команды и расположение источников зависимостей
Япония (Токио) Команды разработки из Японии и Восточной Азии Расположение репозитория и точки приёма артефактов
Южная Корея (Сеул) Команды из Южной Кореи и соседних регионов Маршрут обратных вызовов Runner и передачи журналов
Гонконг Команды из Южного Китая и Юго-Восточной Азии Удобство удалённого рабочего стола и маршрут загрузки зависимостей
Восток США Команды из восточной части Северной Америки и трансатлантические команды Расположение репозитория, хранилища артефактов и узла управления пайплайном

Как выбрать срок аренды

Посуточно

Подходит для проверки установки зависимостей, подписи и архивации в среде Apple Silicon. Сначала зафиксируйте полное время сборки, затем решите, продлевать ли аренду.

Понедельно

Подходит для релизного спринта, переноса скриптов или краткосрочного тестирования. Заложите время на повторные попытки и восстановление кэша зависимостей.

Помесячно

Подходит для постоянной разработки, фиксированного self-hosted Runner и регулярных релизов. Скрипты инициализации окружения, сборки и очистки можно хранить в репозитории.

Поквартально

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

Шаг 3
Заказ и сведения об устройстве

Настройте заказ в консоли и получите данные для подключения

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

01

Настройка заказа

Подтвердите MiniRents M4 или MiniRents M4 Pro, выберите посуточный, понедельный, помесячный или поквартальный срок, затем укажите регион. Перед отправкой проверьте дополнительное хранилище и опцию объединения Thunderbolt 5.

02

Оплата в долларах США

Поддерживаются только USDT-TRC20 и Visa / Mastercard / Amex (через Stripe); расчёты выполняются в долларах США (USD). Фактически доступный платёжный шлюз определяется ответом серверного API.

03

Проверьте статус устройства

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

04

Управление сроком и запросами поддержки

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

Шаг 4
Первое подключение

Сначала проверьте отпечаток хоста, затем установите SSH-сеанс

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

Проверьте данные подключения

Убедитесь, что идентификатор устройства, регион, адрес хоста, имя пользователя SSH и отпечаток относятся к одному устройству. Не продолжайте подключение только потому, что адрес выглядит похожим.

Установите SSH-сеанс

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

Используйте VNC, если нужен графический интерфейс

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

Открыть руководство по подключению и VNC
Шаг 5
Пример выполнения команд

Проверяемая последовательность команд для первой сборки

Вывод обезличен и демонстрирует порядок команд; реальные адреса, отпечатки, пути репозитория и материалы подписи не включены. Перед выполнением замените их значениями из консоли и проекта.

builder — zsh — 120×34 SSH
$ chmod 600 ~/.ssh/minirent_ed25519
$ ssh -i ~/.ssh/minirent_ed25519 builder@203.0.113.24
The authenticity of host cannot be established.
ED25519 key fingerprint is SHA256:[REDACTED]
Are you sure you want to continue connecting? yes

$ uname -m
arm64
$ xcodebuild -version
Xcode [SELECTED_VERSION]
Build version [SELECTED_BUILD]

$ git clone [REDACTED_REPOSITORY] app
$ cd app
$ xcodebuild -workspace App.xcworkspace \
  -scheme App \
  -configuration Release \
  -archivePath build/App.xcarchive archive
** ARCHIVE SUCCEEDED **

$ bundle exec fastlane ios build
[fastlane] Loading controlled environment variables
[fastlane] Archive verified
[fastlane] Output saved to ./artifacts
[fastlane] Finished successfully
Не копируйте конфиденциальные значения:Адрес хоста, отпечаток, адрес репозитория, путь к сертификату и имена переменных окружения берите из консоли и конфигурации проекта. Перед отправкой журналов в тикет удалите токены, содержимое ключей, пути к материалам подписи и персональные данные.
Шаг 6
Настройка окружения сборки

Проверьте пять параметров до загрузки всех зависимостей

Цель проверки окружения — не просто убедиться, что команды выполняются, а подтвердить соответствие архитектуры, Xcode, инструментов командной строки, версий зависимостей и свободного места требованиям проекта. Запись результатов в журнал сборки заметно ускорит поиск причины сбоя.

01

Архитектура Apple Silicon

uname -m

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

02

Версия Xcode

xcodebuild -version

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

03

Путь к инструментам командной строки

xcode-select -p

Убедитесь, что путь относится к выбранной версии Xcode. Не закладывайте фиксированный путь в скрипт — выводите фактический результат в начале задачи.

04

Менеджер зависимостей

bundle exec fastlane --version

Используйте версии Bundler, fastlane и инструментов проекта, зафиксированные в lock-файлах, чтобы уменьшить расхождения между локальными и облачными результатами.

05

Свободное место

df -h .

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

ПРОЙДЕНО

Зафиксируйте базовую линию

mkdir -p build-logs

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

Шаг 7
Выполните первую архивацию

Объедините получение, передачу, сборку и проверку артефактов в единый цикл

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

01

Зафиксируйте версию кода

После получения репозитория сохраните хеш коммита, инициализируйте подмодули и установите зависимости по lock-файлу. Не переключайте ветку во время сборки.

02

Передайте управляемые переменные

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

03

Выполните архивацию

Явно задайте workspace или project, scheme, configuration и archivePath, чтобы команда одинаково работала в интерактивном сеансе и пайплайне.

04

Проверьте результат подписи

Убедитесь, что архив использует нужную команду, сертификат и provisioning-профиль. При несоответствии остановите экспорт и не маскируйте проблему конфигурации ручными временными правками.

05

Проверьте и скачайте артефакты

Зафиксируйте имя, размер, версию коммита и контрольную сумму артефакта, затем скачайте его по управляемому пути. Только после проверки целостности локальной копии переходите к очистке.

Критерии завершения архивации

Первая сборка завершена только при одновременном выполнении четырёх условий

  • Команда завершилась успешно, а в журнале нет пропущенных ошибок подписи
  • Архив соответствует ожидаемому коммиту, scheme и конфигурации сборки
  • Экспортированный артефакт читается, его размер и контрольная сумма записаны
  • Журнал обезличен и сохранён вместе с артефактом под номером задачи
Шаг 8
Передача и очистка

Сразу после проверки артефактов удалите временные права доступа

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

Список очистки после задачи

  • Отзовите краткосрочный токен репозитория и временные разрешения
  • Удалите импортированные материалы подписи и временные файлы окружения
  • Удалите больше не нужные DerivedData и кэш зависимостей
  • Убедитесь, что артефакты архива безопасно скачаны и проверены
  • Выйдите из сеансов SSH и VNC и проверьте состояние устройства

Если ошибка не устранена, отправьте следующие сведения

  • Идентификатор устройства, модель и регион
  • Временной интервал проблемы и соответствующую версию коммита
  • Неудачную команду, код завершения и минимальные шаги воспроизведения
  • Журнал с удалёнными токенами, ключами и персональными данными
  • Выполненные шаги диагностики и их результаты
Войти в консоль и создать тикет
Каналы связи

По вопросам, связанным с устройством, в первую очередь создавайте тикет через консоль — это упрощает привязку к устройству и заказу. Если войти не удаётся, отправьте письмо на support@minirents.com, не прикладывая пароль, приватный ключ или необезличенный журнал.

Открыть руководство по устранению неполадок
Готовы начать первую сборку

Выберите модель и регион — следующим шагом будет подключение к устройству

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