Путь к первому запуску

От заказа до первой сборки iOS — шаг за шагом

Выберите CDNMac M4 и подходящий регион, оформите заказ и получите данные для доступа к системе. Затем защитите подключение, проверьте среду Xcode, выполните Archive и перенесите артефакты в контролируемое хранилище.

1 конфигурация CDNMac M4, M4 / 16 ГБ / 256 ГБ
6 регионов Азиатско-Тихоокеанский регион и США
6 этапов Заказ, оплата, подключение, проверка, сборка, автоматизация
BUILD HANDOFF

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

Маршрут готов
01
Выберите ресурсы Срок аренды, регион и дополнения
02
Завершите оплату Проверьте сумму в USD и платёжный шлюз
03
Получите данные Статус устройства и данные для доступа к системе
04
Защитите доступ Раздельные SSH-ключи и данные VNC
05
Проверьте среду macOS, Xcode, Git и данные для подписи
06
Передайте артефакты Archive, журналы и файлы экспорта
Проверка подписи До сборки
Принцип доступа Минимальные права
Хранение артефактов Контролируемое хранилище
Полный маршрут

Шесть шагов до первого подключения

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

  1. 01

    Выберите срок аренды и регион

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

    Результат: черновик конфигурации заказа
  2. 02

    Завершите оформление и оплату

    Ещё раз проверьте CDNMac M4, период оплаты, регион, расширение SSD и количество устройств в связке Thunderbolt 5. Итоговая сумма зависит от выбора на странице оплаты.

    Результат: идентификатор заказа
  3. 03

    Получите данные для подключения

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

    Результат: данные доступа, которые можно проверить
  4. 04

    Защитите удалённый доступ

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

    Результат: контролируемый путь подключения
  5. 05

    Проверьте среду разработки

    Убедитесь, что macOS, Xcode, Command Line Tools, Git, сертификаты и профили provisioning соответствуют требованиям проекта, а затем восстановите зависимости.

    Результат: запись проверки среды
  6. 06

    Выполните сборку и передайте результаты

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

    Результат: первая сборка с отслеживаемыми данными
Проверьте перед заказом

Заранее определите семь параметров

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

01 Определите задачу

Уточните, нужна ли вам автоматическая сборка iOS, разработка и тестирование macOS, кроссплатформенная мобильная сборка или проверка совместимости моделей с Apple Silicon.

02 Выберите регион

Выберите Сингапур, Японию (Токио), Южную Корею (Сеул), Гонконг, восток США или запад США и запишите, чем обусловлен выбор.

03 Выберите период

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

04 Оцените объём диска

В базовую конфигурацию входит SSD на 256 ГБ. Оцените пиковый объём исходного кода, кэша зависимостей, DerivedData, Archive и журналов, а затем решите, нужно ли расширение SSD.

05 Оцените необходимость параллельной работы

Рассматривайте объединение устройств через Thunderbolt 5, только если вам действительно нужен параллельный рабочий процесс. Уточните количество устройств и зоны ответственности для каждого.

06 Настройте доступ к коду

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

07 Определите место экспорта артефактов

Заранее выберите место хранения Archive, экспортированных пакетов, файлов символов и журналов сборки. Запланируйте экспорт данных до окончания срока аренды.

Создайте заказ

Конфигурация одна — выбирайте срок, регион и дополнения

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

На выбор — 6 регионов

CDNMac M4

Mac mini M4 для сборки iOS, разработки и тестирования macOS, а также задач непрерывной интеграции.

Стартовая цена за день $19.9
M4 ОЗУ 16 ГБ SSD 256 ГБ
За день $19.9
За неделю $53.6
За месяц $99.3
За квартал $270.1

Шесть регионов на выбор

Сингапур Япония (Токио) Южная Корея (Сеул) Гонконг Восток США Запад США

Актуальные сведения о доступности, сроках передачи и дополнительных опциях отображаются в консоли.

+1 ТБ SSD

Подходит для длительной разработки, когда нужно хранить больше кэша зависимостей, Archive и журналов сборки.

За день
$2.6
За неделю
$7.1
За месяц
$13.2
За квартал
$35.9

+2 ТБ SSD

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

За день
$5.2
За неделю
$14.2
За месяц
$26.4
За квартал
$71.8

Объединение через Thunderbolt 5

Оплата за каждое устройство. Для проверенных сценариев параллельной работы; характеристики базовой модели не меняются.

За день
$1.8
За неделю
$4.8
За месяц
$8.8
За квартал
$23.9
Завершите оплату

Перед оплатой проверьте два доступных способа

Все цены и заказы оплачиваются в долларах США (USD). Фактически доступный платёжный шлюз определяется ответом серверного API.

USDT-TRC20

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

Валюта расчётов: USD

Visa / Mastercard / Amex

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

Платёжный шлюз: Stripe
Последняя проверка перед оплатой

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

Получите данные устройства

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

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

ПЕРЕДАЧА УСТРОЙСТВА

Список проверки данных для подключения

Проверьте каждый пункт
Идентификатор заказа Совпадает с записью проекта
Регион Совпадает с выбором при заказе
Состояние устройства Актуальные данные — в консоли
Данные для доступа к системе Только для авторизованных участников
Панель управления Продолжайте, только убедившись, что доступ есть
Первое изменение Замените те учётные данные, которые можно менять

Четыре действия после первого входа

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

SSH — для автоматизации, VNC — для работы с интерфейсом

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

Работа в командной строке

Доступ по SSH-ключу

Подходит для работы с Git, восстановления зависимостей, запуска скриптов, сбора журналов, создания Archive и работы self-hosted runner. Используйте отдельные ключи и выдавайте минимальные права для каждой задачи автоматизации.

  • Проверьте данные хоста, прежде чем сохранять подключение.
  • Ограничьте доступ разрешёнными IP-адресами или сетями.
  • Используйте разные ключи для интерактивного входа и автоматизации.
  • Регулярно меняйте учётные данные и отзывайте ненужные разрешения.
Графический сеанс

Графический сеанс VNC

Подходит для первой проверки Xcode, просмотра графических настроек, работы с инструментами, которым нужен интерфейс, и проверки Archive. Графический сеанс — не повод делиться учётными данными.

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

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

Недостаточно убедиться, что Xcode открывается. Запишите версии, пути, состояние данных для подписи и свободное место на диске — так будет проще найти причину сбоя.

Список проверки среды для первой сборки iOS
Параметр Что проверить Критерий успешной проверки Что делать при проблеме
macOS Запишите версию системы и доступное место на диске Соответствует требованиям проекта к инструментам; места хватает для зависимостей, кэша и Archive Удалите ненужный кэш и проверьте, достаточно ли объёма SSD
Xcode Сверьте основную версию, необходимую проекту, и выбранный путь Проект открывается, целевой SDK и настройки сборки доступны Выберите нужную версию и заново обработайте проект
Command Line Tools xcode-select -p Путь ведёт к нужному набору инструментов Xcode Исправьте выбранный путь, затем проверьте версии команд
Git git --version и проверьте доступ к репозиторию с минимальными правами Тестовый репозиторий доступен для чтения, долгосрочные учётные данные не раскрыты Проверьте права ключей, ограничения по источникам и разрешения для репозитория
Сертификаты и профили provisioning Проверьте название, назначение, срок действия и идентификатор проекта Соответствуют тестовой цели; ненужные материалы не добавлены Попросите ответственного за проект предоставить правильные данные
Файл блокировки зависимостей Убедитесь, что файл блокировки добавлен в репозиторий и соответствует целевой ветке Восстановление зависимостей воспроизводимо, неявного обновления не было Повторите восстановление из коммита, соответствующего файлу блокировки
Команды для первичной проверки Только чтение параметров среды; проект не изменяется
sw_vers
xcodebuild -version
xcode-select -p
git --version
df -h
Запустите первую сборку

Сначала проверьте полный цикл на тестовом репозитории

Цель первой задачи — не выпуск релиза, а проверка полного цикла: доступ к коду, восстановление зависимостей, Archive, проверка подписи, сохранение журналов и экспорт артефактов.

  1. 01 Клонируйте тестовый репозиторий

    Используйте учётные данные с минимальными правами, чтобы получить заведомо собираемый коммит. Запишите хеш коммита и целевую ветку.

    git clone <адрес-репозитория>
  2. 02 Восстановите зависимости

    Восстановите зависимости по файлу блокировки проекта. Если нужны CocoaPods, Flutter или другие инструменты, сначала запишите их версии.

    Файл блокировки должен соответствовать целевому коммиту
  3. 03 Создайте Archive

    Явно укажите workspace, scheme, configuration и archivePath, чтобы не полагаться на неявные значения графического интерфейса.

    xcodebuild archive -workspace App.xcworkspace -scheme App -archivePath build/App.xcarchive
  4. 04 Проверьте подпись

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

    Запишите результат проверки подписи и этап сбоя
  5. 05 Сохраните журналы

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

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

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

    Очищайте рабочую область только после завершения экспорта
Подключите автоматизацию

Превратите успешную сборку в удобный в обслуживании runner

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

Зарегистрируйте runner

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

Запишите: имя, регион, репозиторий, ответственный

Ограничьте права токена

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

Принцип: одна задача — минимальный набор прав

Изолируйте и очищайте рабочую область

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

Правило: изоляция репозиториев, уровни кэша, очистка после сбоя
Что стоит сохранять

Хеш коммита, версии инструментов, время начала и окончания задачи, результат восстановления зависимостей, путь к Archive и данные проверки артефактов.

Что нельзя включать в журналы

Закрытые ключи, токены доступа, пароли сертификатов, полные платёжные реквизиты и чувствительные данные проекта, не относящиеся к устранению проблемы.

До окончания аренды

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

Готовы начать?

Выберите CDNMac M4 и следуйте памятке по передаче

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