De la commande au premier build

Intégrez un Mac dans le cloud
à votre processus de développement

Ce guide couvre les prérequis, le choix entre deux configurations de nœuds physiques dédiés, les quatre nœuds disponibles, la première connexion SSH et la validation d’un build Xcode. Suivez les étapes dans l’ordre et terminez chacune avant de passer à la suivante.

2 configurations 4 nœuds SSH et interface graphique
Singapour Tokyo Séoul Hong Kong
Préparer Compte, clé publique SSH et exigences de la chaîne d’outils
Livraison Selon l’heure de confirmation dans la console
Valider Trois contrôles : connexion, système et build
Étape 01 · Vérifications préalables

Préparez tous les éléments de connexion et les exigences de la chaîne d’outils

Avant de commander, définissez les responsables de la connexion, des builds et de la gestion des accès afin de limiter les échanges après la livraison. Les cinq éléments ci-dessous doivent avoir un responsable clairement identifié.

Compte de la console

Vérifiez que la personne qui passe la commande peut se connecter à la console et consulter les commandes, la facturation, les nœuds et l’état des équipements. Le responsable technique doit savoir qui soumet les tickets et gère les renouvellements.

Critère de validation : la page du compte est accessible

Clé publique SSH

Préparez une clé publique Ed25519 approuvée par l’équipe et transmettez uniquement son contenu public. Conservez la clé privée sur un appareil contrôlé ou dans un système de gestion des clés ; ne la transmettez ni par e-mail, ni par ticket, ni dans un dépôt.

Critère de validation : l’empreinte de la clé publique est enregistrée

Version de Xcode

Vérifiez la version cible de Xcode dans le projet, la configuration CI et les dépendances, puis notez la version minimale de macOS requise. N’indiquez pas seulement « dernière version » : conservez un numéro de version vérifiable.

Critère de validation : la matrice des versions est confirmée

Accès au dépôt de code

Vérifiez que le nœud peut lire les dépôts requis avec une clé de déploiement limitée ou un jeton à durée courte. Définissez d’abord le périmètre minimal, puis décidez si l’écriture d’artefacts ou de statuts est nécessaire.

Critère de validation : les limites de lecture et d’écriture sont claires

Client de bureau à distance

Pour les opérations graphiques, préparez à l’avance un client VNC ou de partage d’écran macOS. Privilégiez SSH pour l’automatisation, le diagnostic et la gestion des fichiers afin de réduire la dépendance aux sessions graphiques.

Critère de validation : le mode de connexion est choisi
Étape 02 · Choisir l’offre et le nœud

Choisissez entre deux configurations selon la concurrence, le jeu de travail et la durée de location

Les deux configurations utilisent des nœuds physiques Apple Silicon dédiés, et non des machines virtuelles. Singapour, Tokyo, Séoul et Hong Kong figurent au catalogue ; la disponibilité réelle est celle renvoyée en temps réel par la console lors de la commande.

Builds courants

ZoomMini M4 Core

M4 · 16 Go de RAM · SSD 256 Go

$20.7 par jour
Jour $20.7 Semaine $56 Mois $103.7 Trimestre $282.1

Idéal pour une pipeline de build iOS, la compilation macOS quotidienne, la validation des dépendances et un runner self-hosted léger fonctionnant en continu.

Critère de choix : Mesurez d’abord le pic de mémoire et le jeu de travail disque d’un build propre, puis prévoyez de l’espace pour le cache des dépendances, les journaux et les artefacts.

Couverture des nœuds

Évaluez les quatre nœuds selon la latence et la collaboration

Choisissez un nœud proche des principaux développeurs, de la source du code ou du point d’entrée de l’orchestration. Ne comparez pas uniquement un ping ponctuel : observez aussi la stabilité pendant les heures de travail et l’expérience de bureau à distance.

  • SingapourAdapté à la collaboration et aux builds en Asie du Sud-Est
  • TokyoAdapté aux équipes japonaises et aux utilisateurs des régions voisines
  • SéoulAdapté aux workflows coréens et nord-est asiatiques
  • Hong KongAdapté à la collaboration en Chine méridionale et en Asie du Sud-Est
Durées et options

Vérifiez la configuration complète avant le paiement

La location est disponible à la journée, à la semaine, au mois ou au trimestre. Pour une validation ponctuelle, choisissez une durée correspondant au temps de test prévu ; pour une pipeline stable, tenez compte du calendrier des releases et de la responsabilité du renouvellement.

+1 To SSD
Par jour $2.9 · Par semaine $7.7 · Par mois $14.3 · Par trimestre $38.9
+2 To SSD
Par jour $5.8 · Par semaine $15.4 · Par mois $28.6 · Par trimestre $77.8
Connexion en parallèle Thunderbolt 5
Par machine et par jour $1.9 · Par semaine $5.2 · Par mois $9.6 · Par trimestre $26.1
Étape 03 · Effectuer le paiement

Réglez la commande selon le détail en USD

La commande détaille séparément la configuration de base, la durée, le nœud et les options. Tous les prix et règlements sont en dollars américains (USD) ; la personne qui passe la commande doit effectuer une dernière vérification avant le paiement.

USDT-TRC20

Vérifiez le réseau, le montant et l’identifiant de commande selon les informations de paiement affichées dans la console. Avant le transfert, confirmez l’utilisation du réseau TRC20 et conservez la transaction pour le rapprochement.

Devise de règlement : USD

Visa / Mastercard / Amex

Le paiement par carte est traité par Stripe. Après le retour de la page de paiement, vérifiez l’état de la commande et le montant facturé dans la console ; la page de retour du navigateur ne confirme pas la livraison de l’équipement.

Devise de règlement : USD
01Vérifier la configuration

Le nom de la configuration, la puce M4, la mémoire et le SSD de base doivent correspondre à l’offre choisie.

02Vérifier la durée

Confirmez la journée, la semaine, le mois ou le trimestre ; ne choisissez pas par erreur une durée longue pour une période de test.

03Vérifier le nœud

Confirmez que Singapour, Tokyo, Séoul ou Hong Kong correspond au plan de connexion.

04Vérifier les options

Confirmez l’extension SSD et le nombre de connexions en parallèle Thunderbolt 5 avant de payer.

Les moyens de paiement réellement disponibles sont ceux renvoyés par la console. Le paiement effectué ne signifie pas que l’équipement est déjà accessible : vérifiez encore l’état de la commande et les informations de livraison.

Étape 04 · Consulter les informations de livraison

Utilisez la fiche de l’équipement dans la console comme référence de connexion

Attendez que l’équipement soit indiqué comme accessible avant de consulter l’adresse, les informations du compte et la durée de location. N’utilisez pas de conversations, anciennes captures d’écran ou informations de connexion d’une autre commande.

Fiche de livraison

Les six champs à vérifier avant la première connexion

Tous les champs doivent provenir de la même commande. Si le nœud, l’adresse ou la durée diffère de vos attentes, interrompez la connexion et ouvrez un ticket depuis la console.

État de l’équipement
Vérifiez que la fiche indique clairement que l’équipement est accessible avant de commencer une session SSH ou graphique.
Nœud
Vérifiez que Singapour, Tokyo, Séoul ou Hong Kong correspond au nœud choisi lors de la commande.
Adresse de connexion
Copiez l’adresse d’hôte et le port attribués afin d’éviter les erreurs de saisie manuelle.
Informations du compte
Vérifiez le nom d’utilisateur attribué, le traitement des identifiants initiaux et les protocoles de connexion autorisés.
Début de la location
Ce champ confirme le point de départ du service et doit correspondre à la commande.
Fin de la location
Utilisez cette date pour planifier le renouvellement, l’archivage des artefacts, l’export des données et la révocation des accès.

Équipement non encore accessible

Continuez à consulter l’état de la commande dans la console. Le délai de livraison est déterminé par l’heure de confirmation affichée dans la console ; n’essayez pas à répétition une adresse qui n’a pas encore été fournie.

Voir l’état dans la console

Un champ doit être vérifié

Dans votre ticket, indiquez l’identifiant de commande, le nœud attendu, l’état actuel de l’équipement et l’heure de constat du problème. N’ajoutez ni mot de passe, ni clé privée, ni données complètes de paiement.

Ouvrir un ticket dans la console
Étape 05 · Première connexion

Vérifiez d’abord l’empreinte de l’hôte, puis consultez les informations système

Lors de la première connexion SSH, ne commencez pas par installer des dépendances : vérifiez que l’adresse cible, l’empreinte de l’hôte, l’utilisateur et les informations matérielles correspondent à la commande en cours.

first-connection · zsh
$ export ZOOMMINI_HOST=assigned-host
$ ssh-keyscan -t ed25519 "$ZOOMMINI_HOST" | ssh-keygen -lf -
256 SHA256:7qV3mL9kR2nF4cX8 assigned-host (ED25519)

$ ssh build@"$ZOOMMINI_HOST"
Last login: remote session
build@zoommini-node ~ %

$ sw_vers
ProductName:            macOS
ProductVersion:         15.2
BuildVersion:           24C101

$ system_profiler SPHardwareDataType
Hardware:
    Model Name: Mac mini
    Chip: Apple M4
    Memory: 16 GB

$ uname -m
arm64
01

Copier l’adresse de connexion depuis la console

Enregistrez l’adresse attribuée dans une variable d’environnement temporaire ou dans la configuration SSH afin d’éviter une adresse incorrecte dans l’historique des commandes. Si le port n’est pas celui par défaut, notez également le paramètre de port.

02

Vérifier séparément l’empreinte de l’hôte

Comparez caractère par caractère l’empreinte Ed25519 relevée localement avec celle de la fiche de livraison. En cas de divergence, interrompez la connexion et n’acceptez pas directement la nouvelle valeur.

03

Confirmer le système et le matériel

sw_vers pour vérifier la version de macOS,system_profiler pour vérifier la puce et la mémoire,uname -m doit renvoyer arm64.

Étape 06 · Validation du build

Déterminez avec trois commandes si la chaîne d’outils peut intégrer la pipeline

Vérifiez d’abord la sélection de Xcode, lancez ensuite le build du projet, puis exécutez les tests automatisés. Conservez le code de sortie et les journaux clés à chaque étape ; ne vous fiez pas uniquement à l’interface.

Contrôle 01 Confirmer la version de Xcode
$ xcodebuild -version
Xcode 16.2
Build version 16C5032a
Critère de réussite

La version de Xcode et la version de build correspondent à la matrice du projet et la commande se termine avec le code 0.

Contrôle 02 Lancer le build du projet
$ xcodebuild -scheme App build
Prepare packages
CompileSwiftSources normal arm64
Ld App normal arm64
** BUILD SUCCEEDED **
Critère de réussite

La sortie se termine par BUILD SUCCEEDEDet ne contient aucune erreur de signature, de dépendance ou d’espace disque.

Contrôle 03 Exécuter les tests automatisés
$ fastlane ios test
Resolving Swift Package Manager dependencies
Test Suite 'All tests' passed
Executed 48 tests, with 0 failures
fastlane.tools finished successfully
Critère de réussite

Le nombre de tests correspond aux attentes, le nombre d’échecs est de 0, fastlane se termine normalement et le processus renvoie le code 0.

Version incohérente

Commencez par exécuter xcode-select -p pour consulter le répertoire développeur actuel, puis basculez selon la matrice des versions de l’équipe. Ne modifiez pas directement les fichiers du projet pour contourner un problème de version.

Échec de la résolution des dépendances

Vérifiez les autorisations du dépôt, le chemin du gestionnaire de paquets et le périmètre d’accès réseau. Avant de vider le cache, sauvegardez les journaux d’erreur afin de conserver les premières traces de l’échec.

Échec de l’étape de signature

Vérifiez le chargement des certificats, des profils de provisioning et des autorisations du runner. Les secrets doivent être injectés par un système de gestion contrôlé, jamais écrits dans les scripts ou les journaux de build.

Étape 07 · Sécurisation après livraison

Après la réussite du build, remplacez les accès temporaires par une configuration durable

La validation confirme uniquement que la chaîne d’outils fonctionne. Avant l’intégration officielle à la CI/CD, mettez à jour les identifiants, gérez les clés publiques, révoquez les accès inutiles et appliquez les privilèges minimaux au runner.

01

Mettre à jour les identifiants du compte

Selon les instructions de livraison, remplacez les identifiants initiaux concernés. Utilisez un mot de passe unique et contrôlé, sans le réutiliser sur votre poste local, dans un dépôt ou sur un autre nœud.

Méthode de vérification Fermez la session actuelle puis reconnectez-vous pour confirmer que les anciens identifiants ne fonctionnent plus.
02

Configurer les clés publiques SSH

Configurez séparément les clés publiques des utilisateurs et des identités automatisées autorisés. Ne partagez pas une même clé privée entre plusieurs personnes ; le commentaire de la clé publique doit permettre d’en retracer l’usage.

Méthode de vérification Testez chaque clé autorisée et consignez son responsable ainsi que son calendrier de rotation.
03

Supprimer les accès inutiles

Supprimez les clés publiques, jetons de dépôt, privilèges administrateur et autorisations de bureau à distance ajoutés temporairement pendant les tests. Révoquez immédiatement les accès des personnes ayant quitté l’équipe et des runners désactivés.

Méthode de vérification Vérifiez les clés autorisées, les groupes d’utilisateurs, les éléments de démarrage et les enregistrements d’inscription des runners.
04

Limiter les privilèges du runner CI

Le runner doit uniquement lire les dépôts nécessaires, exécuter les scripts prévus et écrire dans les emplacements d’artefacts autorisés. N’accordez pas par défaut de privilèges d’administration système ni de jetons interprojets.

Méthode de vérification Effectuez un build avec une identité aux privilèges minimaux et confirmez que toute opération non autorisée est refusée.
Prêt à l’emploi

Checklist finale de validation

N’intégrez le nœud à l’orchestration de production que lorsque les cinq conditions sont réunies : champs de commande cohérents, empreinte SSH identique, spécifications système conformes, codes de sortie du build et des tests égaux à 0, et accès temporaires révoqués.

  • Nœud et durée de location enregistrés
  • Empreinte de l’hôte vérifiée
  • Version de Xcode confirmée
  • Build et tests réussis
  • Privilèges minimaux appliqués

Prêt à intégrer votre première pipeline de build

Commencez par choisir la configuration, le nœud et la durée. Dès que l’équipement est accessible, suivez l’ordre de cette page pour vérifier l’empreinte, le système, le build et les accès.