От заказа до первой сборки

Подключите облачный Mac к существующему процессу разработки

Этот операционный чек-лист начинается с выбора конфигурации и последовательно проверяет узел, учетные данные, toolchain, среду подписи и артефакты сборки. Цель — не просто запустить машину, а выполнить на выделенном физическом Mac mini воспроизводимую сборку с возможностью отката и полными логами.

2 конфигурации Конфигурации выделенных физических машин
5 доступных узлов
$19.9/день минимальная цена
Схема сети облачных Mac с узлами в Сингапуре, Токио, Сеуле, Гонконге и на западе США Сингапур Южная Корея (Сеул) Гонконг Запад США
Операционный чек-лист Первое подключение для сборки
Ресурсы
Выделены для одного заказа
Тип
Физический узел, не виртуальная машина
Работа
Стабильная работа 365 дней в году
Перед началом

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

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

01 / Права

Права разработчика

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

Критерий готовности Ответственный может объяснить источник, область действия и процесс обновления материалов подписи.
02 / Код

Доступ к репозиториям и зависимостям

Проверьте доступ к основному репозиторию, submodule, приватным пакетным источникам, хранилищу артефактов и Git LFS. Учетные данные машины CI должны быть отделены от личных и иметь только минимальные права для сборки.

Критерий готовности В чистой среде можно получить полный исходный код и зависимости зафиксированных версий.
03 / Toolchain

Целевая версия Xcode

Определите версию Xcode по конфигурации проекта, целевому SDK, требованиям компилятора и совместимости плагинов. Для нескольких веток релиза зафиксируйте соответствующие версии Xcode и Command Line Tools.

Критерий готовности Номер версии, обоснование выбора и команды проверки совместимости записаны.
04 / Узел

Сетевой маршрут и узел

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

Критерий готовности Целевой узел протестирован из основных офисных сетей, параметры сети зафиксированы.
05 / Емкость

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

Оцените пиковое использование исходников, кэшей зависимостей, DerivedData, архивов, симуляторов и логов. 256GB подходит для контролируемого рабочего набора; большие ресурсы, несколько версий toolchain или длительное кэширование требуют оценки конфигурации 2TB либо дополнительного хранилища.

Критерий готовности Пиковая оценка включает временные файлы сборки и резерв места для очистки и экспорта.
06 / Период

Длительность задачи и срок аренды

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

Критерий готовности Определены время завершения задачи, точки проверки продления и ответственный за вынос данных.
Конфигурация заказа

Проверяйте в порядке «модель — узел — период — счет»

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

Лист распределения устройства Выберите выделенный физический Mac mini
Расчет в USD
A

VMDebug M4

Для обычных сборок Xcode, автоматизированных тестов и кэшей малого или среднего размера.

M4 16GB RAM 256GB SSD
В день
$19.9
В неделю
$53.7
В месяц
$99.4
За квартал
$270.4
Выбрать VMDebug M4
01 Модель

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

02 Узел

Выберите один узел: Сингапур, Япония (Токио), Южная Корея (Сеул), Гонконг или запад США.

03 Период

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

04 Подтверждение

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

Оплата и расчеты

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

Проверить конфигурацию и дополнительные опции
Первое подключение

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

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

Чек-лист проверки подключения Первая SSH-сессия
  1. 01

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

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

  2. 02

    Сверьте fingerprint хоста

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

  3. 03

    Обновите временные учетные данные

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

  4. 04

    Проведите проверку по двум каналам

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

ssh -p <port> <user>@<host>
uname -m
sw_vers
df -h /
xcode-select -p

Критерии успешного подключения

  • Fingerprint совпадает с деталями заказа
  • Временные учетные данные обновлены
  • SSH-команды стабильно возвращают результат
  • Загрузка, скачивание файлов и права доступа соответствуют ожиданиям
  • Результат теста графического интерфейса записан
Открыть диагностику проблем подключения

Эти данные понадобятся при сбое

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

Войти в панель управления и отправить тикет
Путь миграции

Разделите перенос на обратимые пути для данных, toolchain и CI

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

ПУТЬ 01

Перенос данных

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

Входные данные
Исходный код, необходимые ресурсы, шаблоны конфигурации, lock-файлы зависимостей и обезличенные тестовые данные.
Точка проверки
Сверьте количество файлов и хэши, проверьте права, символические ссылки, окончания строк и целостность больших объектов.
Откат
Сохраните локальную копию только для чтения; при ошибке проверки очистите целевой каталог и повторите синхронизацию по последнему полному манифесту.
ПУТЬ 02

Воспроизведение toolchain

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

Входные данные
Версия Xcode, Command Line Tools, Brewfile, lock-файлы менеджеров пакетов, сертификаты и список импорта Keychain.
Точка проверки
Запишите результаты определения компилятора, SDK, Git, Ruby, Node и зависимостей проекта, затем выполните минимальную тестовую цель.
Откат
Сохраните список версий и логи установки; при конфликте удалите добавленные на этом этапе компоненты и вернитесь к последнему проверенному набору версий.
ПУТЬ 03

Подключение CI

Сначала подключите один тестовый branch к runner, проверьте изоляцию, кэш и передачу логов, затем переключайте production-задачи на облачный Mac.

Входные данные
Данные регистрации runner, правила рабочих каталогов, способ внедрения ключей, ключи кэша, повторы при сбоях и стратегия загрузки артефактов.
Точка проверки
Последовательно выполните чистую сборку и сборку с кэшем, проверьте код выхода, логи, хэши артефактов и изоляцию каталогов между задачами.
Откат
Сохраните рабочее состояние прежнего runner; при сбое нового пути остановите планирование и восстановите проверенное старое определение задачи.
Условие переключения
Переключайте длительные задачи только после прохождения всех трех путей

После совпадения хэшей данных, воспроизводимости версий toolchain и стабильных результатов последовательных сборок CI расширяйте охват веток или параллелизм. Во время миграции не меняйте одновременно версии зависимостей, политику подписи и способ планирования.

Инициализация среды

Восстанавливайте среду разработки, начиная с зафиксированных версий

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

Запись инициализации Рекомендуемый порядок
Приоритет воспроизводимости
  1. 01

    Xcode и Command Line Tools

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

  2. 02

    Git и доступ к репозиторию

    Настройте автора коммитов, проверку хоста и учетные данные с минимальными правами, затем получите основной репозиторий, submodule и большие объекты; проверьте ветку по умолчанию и удаленный адрес.

  3. 03

    Сертификаты и Keychain

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

  4. 04

    Менеджер пакетов и кэш

    Восстановите зависимости по lock-файлам, отделяя повторно используемый кэш от состояния проекта, которое нужно создать заново. Ключ кэша должен включать версии toolchain и зависимостей.

  5. 05

    Каталоги сборки

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

Сбор версий

Сначала сохраните fingerprint среды

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

sw_vers
uname -m
xcodebuild -version
xcode-select -p
git --version
ruby --version
node --version
df -h /
Приемка первой сборки

Докажите готовность среды полной цепочкой сборки

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

Порядок и критерии приемки первой сборки в облачном Mac
Порядок Проверка Действия Критерий успеха Что записать
01 Восстановление зависимостей Разберите lock-файлы и скачайте все зависимости, проверьте приватные источники, submodule и попадания в кэш. Нет дрейфа незакрепленных версий, зависимости разрешены, версии ключевых пакетов совпадают с локальной базовой линией. Хэш lock-файлов, время восстановления, ключ кэша, число повторов после сбоев.
02 Автоматизированные тесты Запустите согласованные проектом модульные, интеграционные и необходимые тесты в симуляторе. Код выхода соответствует ожиданиям, для каждого сбоя определена причина, файлы результатов доступны для скачивания. Тестовая цель, число успешных и неуспешных тестов, путь к логам.
03 Архивирование Выполните Archive с конфигурацией релиза и проверьте target, Scheme, SDK и параметры сборки. Каталог архива создан полностью, build number и commit отслеживаются, число предупреждений записано. Время архивирования, версия Xcode, commit, хэш архива.
04 Проверка подписи Сверьте identity подписи, идентификатор команды, provisioning profile, Entitlements и идентификатор пакета target. Цепочка подписи соответствует ожиданиям проекта, конфиденциальные материалы отсутствуют в публичных логах и каталоге артефактов. Результат проверки, отклонения, ответственный, вывод команды проверки.
05 Скачивание артефактов Экспортируйте согласованные артефакты в приемочное расположение и проверьте размер, хэш и результат распаковки. Артефакт полностью скачан, хэш совпадает, имя и срок хранения соответствуют правилам команды. Имя файла, размер, хэш, время скачивания, место сохранения.
Базовая линия A

Чистая сборка

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

Базовая линия B

Сборка с кэшем

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

Базовая линия C

Контролируемый сбой

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

Длительная работа

Превратите успешную сборку в устойчивый процесс

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

OPS 01

Оповещения о свободном месте

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

Рекомендуется записывать Общий объем, доступный объем, ежедневный рост и максимальный размер одного архива.
OPS 02

Правила очистки кэша

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

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

Ротация ключей

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

Рекомендуется записывать Назначение, область прав, срок действия, ответственного и результат проверки.
OPS 04

Проверка обновлений системы

До обновления проверьте на некритичной задаче Xcode, Command Line Tools, процесс подписи, зависимости и материалы отката. VMDebug не устанавливает плановые периоды простоя: пользователь сам выбирает время обновления с учетом своих задач.

Рекомендуется записывать Версию до обновления, целевую версию, результат совместимости, материалы отката и время выполнения.
OPS 05

Откат после сбоя задачи

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

Рекомендуется записывать Условие срабатывания, способ остановки, версию восстановления, команду проверки и ответственного.
OPS 06

Вынос данных до завершения заказа

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

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

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

Проверить границы тарификации и использования
Готовы начать

Подключите первый облачный Mac по операционному чек-листу

Выберите VMDebug M4 или VMDebug M4 Pro и узел в Сингапуре, Японии (Токио), Южной Корее (Сеул), Гонконге или на западе США. Поддерживаются только USDT-TRC20 и Visa / Mastercard / Amex (через Stripe); все заказы оплачиваются в USD.