Deinen Cloud-Mac in Entwicklungs- und CI-Prozesse integrieren
Wähle zunächst Region, Modell und Laufzeit. Richte danach Zugangsdaten, SSH, grafischen Desktop und den ersten Xcode-Build ein. Halte jeden Status nachvollziehbar fest.
AbnahmeProduktive Aufgaben erst nach erfolgreicher Prüfung ausführen
Adresse, Zugangsdaten und aktueller Verfügbarkeitsstatus werden in der Konsole angezeigt365 DAYS
Vorbereitung
Sechs Eingaben vorab bereithalten
Bei der Auswahl zählt nicht nur der Chip. Region, Zugriffsart, Toolchain-Versionen und Verantwortlichkeiten beeinflussen die erste Stunde nach der Bereitstellung.
01
Zielregion
Wähle zwischen Singapur, Japan (Tokio), Südkorea (Seoul) und Hongkong die Region mit der passenden Nähe zu Entwicklerinnen und Entwicklern oder dem Artefaktspeicher. Berücksichtige auch die Netzwerkwege zu Repository und Abhängigkeiten.
SG · JP · KR · HK02
Knotenkonfiguration
Für leichte Builds ist Orb M4 16 ein guter Einstieg. Größere Abhängigkeitsgraphen und parallele Aufgaben eignen sich für Orb M4 24; für speicherintensive Builds oder lokale KI-Experimente wählst du Orb M4 Pro.
3 Konfigurationen03
Mietdauer
Für kurzfristige Tests eignen sich Tag oder Woche, für stabile Pipelines Monat oder Quartal. Notiere zuerst den internen Abnahmetermin und entscheide danach über eine Verlängerung.
Tag · Woche · Monat · Quartal04
SSH-Public-Key
Erstelle einen Ed25519-Public-Key ausschließlich für diesen Knoten. Der Private Key darf nur auf autorisierten Geräten oder in einem kontrollierten Schlüsselsystem liegen. Verwende keinen persönlichen Alltagsschlüssel als Teamzugang.
Ed25519 empfohlen05
Teamzugriffsliste
Lege Knotenverantwortliche, CI-Administratoren und Störungs-Kontakte fest. Jede Person verwendet einen eigenen Schlüssel; halte Hinzufügungen, Änderungen und Widerrufe fest.
Ein Zugang pro Person06
macOS-Toolchain
Fixiere macOS-, Xcode-, Command-Line-Tools-, Ruby-, Node-, CocoaPods- und Paketmanager-Versionen. Dokumentiere die Anforderungen im Repository und prüfe sie bei der Initialisierung.
Reproduzierbare Versionen
Bestellung und Bereitstellung
Mit drei Entscheidungen zum passenden Knoten
Die Konsole zeigt verfügbare Regionen je Modell. Die im Katalog angezeigten Kombinationen sind in der Regel bestellbar; maßgeblich ist der aktuelle Status in der Konsole.
Verfügbar sind Singapur, Japan (Tokio), Südkorea (Seoul) und Hongkong; bei der Laufzeit stehen Tag, Woche, Monat und Quartal zur Auswahl. Trage Regionscode und Verlängerungstermin in die internen Asset-Daten ein.
03
Bestellung prüfen und Bereitstellungsdaten abwarten
Prüfe Modell, Region, Laufzeit und Zusatzoptionen und schließe die Bestellung ab. Knotenadresse, erste Zugangsdaten und Servicestatus werden in der Konsole bereitgestellt.
Zugang zuerst absichern, Entwicklungsumgebung danach installieren
Die ersten Zugangsdaten dienen ausschließlich dem Aufbau der ersten kontrollierten Verbindung. Importiere keine Produktions-Repositories oder Signaturmaterialien, bevor Schlüssel, Zugriffe und Wiederherstellung geprüft sind.
FIRST ACCESS RECORDNach der ersten Anmeldung
Temporären Zugang in einen prüfbaren Zugang umwandeln
Bereitstellungsdaten prüfenPrüfe, ob Knotennummer, Adresse, Port und Region mit der Bestellung übereinstimmen, und dokumentiere das Ergebnis in der Team-Asset-Liste.
Eigenen SSH-Public-Key hinterlegenVergib separate Schlüssel für Administration, Entwicklung und automatisierte Runner. Verwende nicht denselben Private Key für Personen- und CI-Zugriffe.
Zugriffseinstellungen anpassenSchränke die Nutzung temporärer Zugangsdaten erst ein, wenn die Schlüsselanmeldung funktioniert. Halte nach jeder Änderung einen geprüften Wiederherstellungspfad vor.
Wiederherstellungsdaten speichernDokumentiere Knotennummer, autorisierte Mitglieder, Schlüsselfingerabdruck, Wiederherstellungsverantwortliche und letzten Prüfzeitpunkt. Bewahre die Wiederherstellungsdaten getrennt vom Knoten auf.
Zugriffsgrenzen
Personen und Automatisierung trennen
Entwicklerschlüssel dienen der interaktiven Fehleranalyse; Runner-Schlüssel erhalten nur die für die Pipeline nötigen Rechte. Widerrufe beim Ausscheiden eines Mitglieds dessen Public Key.
Nachvollziehbarer eigener Fingerabdruck
Wiederherstellung prüfen
Rückfallpfad vor Änderungen bestätigen
Bewahre vor Änderungen an Netzwerk, SSH oder grafischer Sitzung die aktuelle funktionierende Sitzung auf und lasse die Wiederherstellungsdaten in der Konsole von einer zweiten verantwortlichen Person prüfen.
Überspringe die Prüfung des Host-Fingerabdrucks nicht. Adresse und Port stammen aus der Konsole; vergleiche den vertrauenswürdigen Fingerabdruck mit dem bestätigten Bereitstellungsprotokoll.
Knoten-ZugangsprotokollAusstehend
# Variable erst nach Erhalt der Konsolenadresse setzen
export NODE_HOST="KNOTENADRESSE"
export NODE_PORT="22"
# Berechtigungen des dedizierten Private Keys korrigieren
chmod 600 ~/.ssh/orbvps_node
# Host-Fingerabdruck auslesen und anzeigen, anschließend mit dem Bereitstellungsprotokoll vergleichen
ssh-keyscan -p "$NODE_PORT" "$NODE_HOST" \
| ssh-keygen -lf -
# Erste Verbindung herstellen
ssh -p "$NODE_PORT" \
-i ~/.ssh/orbvps_node \
nodeadmin@"$NODE_HOST"
# Nach der Anmeldung Hardware-, System- und Festplattenstatus prüfen$ uname -m
arm64$ sw_vers
$ sysctl -n machdep.cpu.brand_string
$ df -h /
$ uptime
SSH ACCEPTANCE4 CHECKS
Fingerabdruck stimmt übereinDas Scan-Ergebnis muss mit dem vertrauenswürdigen Bereitstellungsprotokoll übereinstimmen. Bei Abweichungen Verbindung beenden und über ein Konsolen-Ticket prüfen.
Schlüsselberechtigungen korrektBei zu weit gefassten Private-Key-Berechtigungen verweigert SSH das Laden. Setze die Berechtigungen auf Lesen und Schreiben nur für den aktuellen Benutzer.
Architektur ist arm64Prüfe nach der Anmeldung Prozessorarchitektur und Chipinformationen, damit die Toolchain nicht auf dem falschen Host installiert wird.
Festplatten- und Laufzeitstatus lesbarDokumentiere freien Speicherplatz des Root-Volumes, Systemversion und Laufzeit als Ausgangszustand für die spätere Build-Fehleranalyse.
Initialisierung des grafischen Desktops
VNC-Sitzung als reproduzierbare Arbeitsumgebung einrichten
Der grafische Desktop eignet sich für Anzeige-, Systemeinstellungs- und erste Xcode-Interaktionen. Verbindungsdaten werden nicht öffentlich bereitgestellt; Adresse und Zugangsdaten sind nach der Aktivierung in der Konsole einsehbar.
DESKTOP BASELINEAbnahme der grafischen Sitzung
Beende die Sitzung nach jeder Änderung und verbinde dich erneut, um die Konfiguration in einer neuen Sitzung zu prüfen.
01
Anzeige und Auflösung
Wähle zunächst eine Auflösung, die zu Netzwerk und Bildschirm passt. Bei sehr kleiner Darstellung oder deutlicher Verzögerung reduziere zuerst die Auflösung und prüfe anschließend den Netzwerkpfad.
02
Systemsprache und Zeitzone
Vereinheitliche Systemsprache, regionale Formate und Zeitzone nach der Teamvorgabe, damit Build-Logs, Datumsangaben und Automatisierungsskripte konsistent bleiben.
03
Sperrstrategie
Stelle sicher, dass die Bildschirmsperre laufende Aufgaben nicht unterbricht und unbefugten Zugriff dennoch begrenzt. Interaktive Sitzungen und CI-Aufgaben sind getrennt zu prüfen.
04
Verbindung wiederherstellen
Trenne eine grafische Sitzung absichtlich und verbinde dich erneut. Prüfe Desktopstatus, Auflösung und laufende Prozesse.
Migrationspfad
Vom lokalen Mac zum stabilen Cloud-Build-Knoten
Die Migration erfolgt in drei Phasen: erst prüfbare Daten übertragen, dann die Toolchain fixieren und zuletzt CI anbinden. Repository, Abhängigkeiten und Automatisierung nicht ungeprüft auf einmal kopieren.
LOCAL
01
Daten und Repository migrieren
Migriere nur benötigte Repositories, Lockfiles, Build-Skripte und Testdaten. Schließe temporäre Caches, alte Artefakte und herrenlose Dateien aus und prüfe danach Repositorystatus und wichtige Dateisummen.
Standard-Branch und Remote-Adresse bestätigen
Submodule und Abhängigkeiten großer Dateien prüfen
Testdaten anonymisieren
TOOLCHAIN
02
Toolchain installieren und fixieren
Installiere Xcode, Command-Line-Tools und Paketmanager gemäß den Repository-Anforderungen. Speichere die tatsächlichen Versionsausgaben in der Baseline; ersetze konkrete Versionsnummern nicht durch „neueste Version“.
Xcode- und SDK-Versionen dokumentieren
Abhängigkeiten anhand der Lockfiles wiederherstellen
Shell- und Laufzeitpfade festlegen
CLOUD MAC
03
CI anbinden und Rollback prüfen
Führe nach der Registrierung des self-hosted Runners zunächst einen kontrollierten Testjob aus. Prüfe Fehlerprotokolle, Cache-Bereinigung und Wiederherstellung, bevor du produktive Branches schrittweise freigibst.
Aufgaben mit dedizierten Labels begrenzen
Cache-Treffer und Bereinigung prüfen
Runner-Deaktivierung und Rückfall üben
Kriterium für abgeschlossene Migration:Derselbe Commit wird lokal und auf dem Cloud-Mac mit der dokumentierten Toolchain gebaut, die wichtigsten Testergebnisse stimmen überein und die Bereitstellung lässt sich anhand der Dokumentation wiederholen.
Erster Build
Eine nachvollziehbare Erfolgs-Baseline erstellen
Der erste Build soll nicht die kürzeste Laufzeit beweisen, sondern reproduzierbare Toolchain, Abhängigkeiten, Berechtigungen und Ausgabepfade.
01
Xcode-Pfad und Version prüfen
Prüfe, ob aktives Entwicklerverzeichnis, Xcode-Version und verfügbares SDK den Projektanforderungen entsprechen.
02
Lizenz bestätigen und Abhängigkeiten installieren
Bestätige die Xcode-Lizenz und installiere Ruby, Node, CocoaPods sowie weitere Projektabhängigkeiten strikt anhand der Lockfiles.
03
Kontrollierten Build ausführen
Gib Workspace, Scheme und Configuration eindeutig an und speichere die vollständige Standardausgabe in einer separaten Logdatei.
04
Baseline dokumentieren
Halte Commit-ID, Toolchain-Versionen, Start- und Endzeit, Exit-Code sowie Artefaktpfad als Vergleichsbasis für spätere Änderungen fest.
Den Runner nur die vorgesehenen Aufgaben ausführen lassen
Begrenze den self-hosted Runner zunächst mit dediziertem Label und Test-Branch, bevor du produktive Builds schrittweise freigibst.
RUNNER PROFILE
Runner-Identität
Name
orb-m4-ci-01
Labels
macos · arm64 · xcode
Arbeitsverzeichnis
/Users/runner/work
Parallelisierungsstrategie
Mit einem einzelnen Job beginnen
ACCESS POLICY
Berechtigungen und Schlüssel
Eigenes Runner-BenutzerkontoLass Automatisierungsaufgaben nicht dauerhaft ein interaktives Administratorkonto verwenden.
Schlüssel nach Zweck trennenRepository-Lesen, Artefakt-Schreiben und Deployment jeweils nur mit den unbedingt erforderlichen Rechten ausstatten.
Sensible Werte nicht ins Repository schreibenÜber kontrollierte CI-Variablen injizieren und prüfen, dass Logs keine vollständigen Werte ausgeben.
CACHE CONTROL
Cache und Wiederherstellung
Cache-Key versionierenLockfile-Hash, Architektur und Toolchain-Version in den Cache-Key aufnehmen.
Sauberen Neuaufbau ermöglichenJede Pipeline muss nach dem Leeren des Caches einen vollständigen Build ausführen können.
Wachstum des Arbeitsverzeichnisses begrenzenRegelmäßig den Speicherverbrauch von DerivedData, Archiven und temporären Artefakten prüfen.
CONTROLLED TEST JOB
Zuerst einen vorhersehbaren Testjob ausführen
Der Job gibt die Umgebung aus, stellt Abhängigkeiten wieder her, führt Unit-Tests aus und erstellt einen Build ohne Veröffentlichung. Prüfe Label-Routing, vollständige Logs, Cache-Bereinigung und das Stoppen bei Fehlern, bevor du produktive Branches anbindest.
Erwarteter Exit-Code
0 / Erfolg
Muss aufbewahrt werden
Logs, Commit-ID, Artefaktzusammenfassung
Fehlerbehandlung
Produktive Aufgaben stoppen und zur Baseline-Prüfung zurückkehren
Prüfung vor dem Go-live
Produktive Builds erst starten, wenn alle sechs Status eindeutig sind
Übertrage die Prüfergebnisse in das Team-Runbook. Der Knoten kann 365 Tage im Jahr betrieben werden, doch Build-Prozesse benötigen weiterhin klare Zuständigkeiten für Daten, Monitoring und Reaktion.
Backup
Repository, Build-Konfiguration, Wiederherstellungsdaten der Schlüssel und erforderliche Artefakte liegen zusätzlich außerhalb des Knotens vor; eine Wiederherstellung wurde erfolgreich geprüft.
Wiederherstellung geprüft
Monitoring
Erfasse mindestens freien Speicher, Build-Exit-Code, Wartezeit von Aufgaben und Online-Status des Runners und definiere Schwellenwerte für Auffälligkeiten.
Metriken haben Verantwortliche
Benachrichtigungskontakte
Haupt- und Ersatzverantwortliche können auf Knotendaten, Build-Logs und Konsolen-Tickets zugreifen; der Übergabepfad ist dokumentiert.
Haupt- und Ersatzkontakte vorhanden
Verlängerungstermin
Bestelllaufzeit und interner Bestätigungstermin sind dokumentiert und hängen nicht vom Gedächtnis einzelner Personen ab. Bewerte vor Konfigurationsänderungen das Zeitfenster laufender Aufgaben.
Laufzeit dokumentiert
Zugriff widerrufen
Personen- und Runner-Schlüssel sowie die zugehörigen Berechtigungen sind erfasst und können einzeln widerrufen werden, ohne andere Mitglieder zu beeinträchtigen.
Ein Eintrag pro Element
Kontaktweg bei Störungen
Knotennummer, Zeitraum des Vorfalls, Reproduktionsschritte und anonymisierte Logs lassen sich jederzeit zusammenstellen; autorisierte Mitglieder können damit über die Konsole ein Ticket erstellen.
Material direkt einreichbar
Bereit für die Bereitstellung
Mit einem prüfbaren Cloud-Mac starten
Wähle Modell, Region und Laufzeit und schließe nach der Aktivierung sicheren Zugriff, ersten Build und CI-Abnahme anhand dieses Leitfadens ab.