Verbindung · Migration · CI/CD

Probleme lösen: von der Verbindungsprüfung bis zur Wiederherstellung der Pipeline

Ermitteln Sie zuerst, auf welcher Ebene das Problem auftritt, und sammeln Sie anschließend Knoten, Zeitstempel, den vollständigen Fehler sowie die letzte Änderung. Diese direkt ausführbare Prüfreihenfolge eignet sich für grafische Oberflächen, Kommandozeilen, Xcode und selbst gehostete Runner auf ArmMacs Cloud Macs.

Diagnose-Checkliste

01 Knoten und Modell identifizieren

02 Lokalen Netzwerkstatus erfassen

03 Einmal mit Zeitstempel reproduzieren

04 Bereinigte Protokolle sammeln

05 Nachweise an das Ticket anhängen

Grafische Oberfläche und Kommandozeile vollständig verfügbar Dedizierter physischer Knoten, keine virtuelle Maschine 365 Tage im Jahr verfügbar

Support-Routing

Zuerst nach Problemtyp aufteilen

Dasselbe Symptom kann durch das lokale Netzwerk, das Knotensystem, die Toolchain oder die Pipeline-Konfiguration verursacht werden. Wählen Sie zunächst die passendste Kategorie und notieren Sie Knoten, Ortszeit und Zeitzone, den Originalfehler sowie den Zeitpunkt des letzten Erfolgs.

Bewahren Sie den Originalfehler auf und schreiben Sie nicht nur „funktioniert nicht“. Entfernen Sie vor dem Übermitteln von Protokollen Passwörter, private Schlüssel, Zugriffstoken, Inhalte von Signaturmaterial und geschäftliche Daten aus Repositories.

Erste Verbindung

Erste Verbindung in vier Schritten

Ändern Sie Netzwerk, Anmeldedaten und Systemeinstellungen nicht gleichzeitig. Prüfen Sie das Ergebnis nach jedem Schritt, damit sich die fehlerhafte Phase eindeutig eingrenzen lässt.

  1. 01

    Anmeldedaten abrufen und prüfen

    Öffnen Sie die entsprechende Bestellung in der Konsole und prüfen Sie Modell, Knoten, Verbindungsadresse, Benutzername sowie temporäres Passwort oder SSH-Anmeldedaten. Stellen Sie sicher, dass Sie die Zielinstanz und nicht eine abgelaufene Bestellung oder eine Bestellung in einer anderen Region anzeigen. Speichern Sie Anmeldedaten ausschließlich in einem kontrollierten Passwortmanager.

  2. 02

    Netzwerk vom lokalen Gerät zum Knoten prüfen

    Notieren Sie zunächst Netzwerktyp, Ausgangsumgebung und Testzeit. Prüfen Sie anschließend DNS-Auflösung, Erreichbarkeit der Zieladresse und erforderliche Ports. Wenn das Unternehmensnetzwerk fehlschlägt, ein Ersatznetzwerk jedoch funktioniert, prüfen Sie vorrangig lokale Firewall, Proxy oder Ausgangsrichtlinien, statt den Knoten wiederholt zurückzusetzen.

  3. 03

    VNC- oder SSH-Verbindung herstellen

    Für eine grafische Oberfläche verwenden Sie den VNC-Remote-Desktop; für Skripte, Repository-Synchronisierung und Automatisierung bevorzugen Sie SSH. Führen Sie bei der ersten Verbindung zunächst eine kurze Sitzung durch und prüfen Sie Tastatureingaben, Dateioperationen und Befehlsausführung, bevor Sie große Datenmengen migrieren oder Abhängigkeiten installieren.

  4. 04

    Initiale Sicherheitseinstellungen ändern

    Ändern Sie das temporäre Passwort sofort, hinterlegen Sie SSH-öffentliche Schlüssel gemäß den Teamregeln, beschränken Sie den Zugriff auf Anmeldedaten und prüfen Sie die Einstellungen für den Fernzugriff. Schreiben Sie private Schlüssel, Zertifikatpasswörter oder Pipeline-Token nicht in gemeinsam genutzte Skripte, Build-Protokolle oder Repository-Dateien.

Verbindungsnachweise

Bei einem Verbindungsfehler mindestens diese Informationen erfassen

node: SG / JP / KR / HK / US-W
protocol: VNC or SSH
local_network: office / home / mobile
timestamp: YYYY-MM-DD HH:MM timezone
result: timeout / refused / authentication failed
last_success: YYYY-MM-DD HH:MM timezone

Migrationspfad

Vom lokalen Mac zur reproduzierbaren Pipeline

Migration bedeutet nicht, das gesamte Benutzerverzeichnis zu kopieren. Behandeln Sie Projektdaten, Toolchain-Definitionen und Runner-Konfiguration getrennt. Das reduziert Umgebungsabweichungen und erleichtert den vollständigen Export vor Ablauf der Mietdauer.

PFAD 01

Projektdaten migrieren

  1. Umfang festlegenMigrieren Sie nur Repositories, erforderliche Datensätze, Konfigurationsvorlagen und Build-Eingaben; irrelevante Caches werden nicht kopiert.
  2. Größe berechnenErfassen Sie Größe des Quellverzeichnisses, Dateianzahl und Prüfsummen und reservieren Sie zusätzlichen Speicher für Abhängigkeiten und Build-Artefakte.
  3. In Teilmengen übertragenPrüfen Sie bei kleinen Repositories zuerst Berechtigungen und Zeilenenden. Teilen Sie große Datenmengen nach Verzeichnissen auf und führen Sie nach der Übertragung Stichprobenprüfungen durch.
  4. Geheimnisse isolierenKonfigurieren Sie sensible Anmeldedaten separat über einen kontrollierten Weg. Sie gehören nicht in Archive, Repositories oder normale Synchronisierungsverzeichnisse.
PFAD 02

Xcode und Abhängigkeiten reproduzieren

  1. Versionen festschreibenDokumentieren Sie die Versionen von Xcode, Kommandozeilen-Tools, Sprachlaufzeit und Paketmanager.
  2. Abhängigkeiten wiederherstellenVerwenden Sie bevorzugt Sperrdateien und ausführbare Installationsskripte, statt lokale Build-Caches direkt zu kopieren.
  3. Baseline-Build ausführenBauen Sie zuerst das kleinste Ziel, führen Sie danach Tests und ein vollständiges Archiv aus und speichern Sie Exit-Codes und Protokolle getrennt.
  4. Checkliste festschreibenHalten Sie Versionen, Installationsreihenfolge, Namen der Umgebungsvariablen und Prüfkommandos im Team-Betriebshandbuch fest.
PFAD 03

CI/CD-Runner anbinden

  1. Dedizierte Ausführungsumgebung erstellenTrennen Sie Pipeline-Jobs von alltäglichen Remote-Desktop-Aktivitäten, um Berechtigungs- und Verzeichniskonflikte zu reduzieren.
  2. Präzise Labels festlegenLabels sollten mindestens Plattform, Chipklasse und Xcode-Hauptversion ausdrücken, damit Jobs nicht versehentlich falsch zugewiesen werden.
  3. Mit einer Ausführung beginnenPrüfen Sie zunächst Build, Tests, Archivierung und Artefaktübertragung, bevor Sie die Parallelisierung bewerten.
  4. Bereinigung definierenLöschen Sie nach Abschluss des Jobs temporäre Anmeldedaten, abgeleitete Daten und unnötige Artefakte, behalten Sie jedoch erforderliche Protokolle.

Xcode-Diagnose

Xcode-Cloud-Builds systematisch prüfen

Prüfen Sie zuerst die Toolchain und anschließend Berechtigungen, Caches und Speicher. Aktualisieren Sie beim selben Versuch nicht gleichzeitig Xcode und Abhängigkeiten und ersetzen Sie keine Signaturdateien; sonst lässt sich anhand der Protokolle nicht feststellen, welche Änderung geholfen hat.

Prüfebene Zu prüfende Fakten Empfohlene Aktion Ticket-Nachweise
Versionsauswahl Sind grafische Xcode-Version, Pfad der Kommandozeilen-Tools und das vom Projekt geforderte SDK konsistent? Fixieren Sie eine Version für einen Minimal-Build und stellen Sie sicher, dass Pipeline und interaktives Terminal denselben Pfad verwenden. Versionsausgabe, Auswahlpfad, fehlgeschlagenes Ziel
Signaturdateien Sind die Dateien vollständig und gültig, und verweisen Ziel und Konfiguration auf die richtigen Dateien? Prüfen Sie die Lesbarkeit in einer isolierten Umgebung und schreiben Sie keine sensiblen Inhalte in Protokolle. Bereinigter Name, Gültigkeitsdauer, Originalfehler
Zertifikatsberechtigungen Kann der ausführende Benutzer auf die erforderlichen Zertifikate und Schlüsselmaterialien zugreifen? Vergleichen Sie die Berechtigungsumgebung des interaktiven Builds mit der des Runner-Benutzers und grenzen Sie die Unterschiede ein. Ausführender Benutzer, Berechtigungsergebnis, Fehlerphase
Derived Data Stammt der alte Cache aus einem anderen Branch, einer anderen Xcode-Version oder einer anderen Build-Konfiguration? Speichern Sie zunächst ein Fehlerprotokoll, löschen Sie anschließend den Ziel-Cache und führen Sie denselben Befehl zum Vergleich erneut aus. Exit-Codes und Protokollunterschiede vor und nach der Bereinigung
Speicherplatz Freier Speicher auf dem Systemvolume sowie Belegung durch Archivverzeichnis, Simulator-Daten und Abhängigkeits-Caches Löschen Sie zuerst regenerierbare Caches und abgelaufene Artefakte, nicht die einzige Kopie. Freier Speicher und größtes Verzeichnis vor dem Fehler
Build-Protokoll Sind erster echter Fehler, fehlgeschlagenes Ziel, Exit-Code und Kontext vollständig? Speichern Sie das Rohtextprotokoll, extrahieren Sie relevante Zeilen vor und nach dem ersten Fehler und bereinigen Sie sie. Befehl, Zeitstempel, Exit-Code, Protokollanhang

Bewahren Sie im Protokoll nur den zur Fehlerlokalisierung erforderlichen Kontext auf. Suchen und entfernen Sie vor dem Übermitteln Token, Passwörter, private Schlüssel, Zertifikatpasswörter, interne Repository-Adressen und Geschäftsdaten.

Runner-Handbuch

Grundlagen für Anbindung und Bereinigung zweier Runner-Typen

ArmMacs stellt dedizierte physische Knoten bereit, sodass Arbeitsverzeichnisse und Toolchains über mehrere Builds hinweg erhalten bleiben können. Damit verschwinden Caches, Anmeldedaten und alte Artefakte jedoch nicht automatisch; die Bereinigungsgrenzen müssen in der Pipeline ausdrücklich definiert werden.

GitHub Actions

Selbst gehosteter Mac Runner

  1. RegistrierungRegistrieren Sie den Runner mit einer dedizierten Identität, prüfen Sie, ob der Dienst nach dem Start dauerhaft als online angezeigt wird, und dokumentieren Sie Runner-Namen und Arbeitsverzeichnis.
  2. LabelsBehalten Sie das Plattform-Label bei und ergänzen Sie Chipklasse, Xcode-Hauptversion und Verwendungszweck. Workflows dürfen nur die tatsächlich benötigte Label-Kombination verwenden.
  3. ParallelitätFühren Sie zunächst einen Job nach dem anderen aus. Gleichzeitige Xcode-Archivierungen konkurrieren um Speicherplatz, Caches und Signaturressourcen und erhöhen die Zahl sporadischer Fehler.
  4. BereinigungLöschen Sie nach jedem Job temporäre Anmeldedaten und aufgabenspezifische Dateien. Behalten Sie Caches nach Schlüssel und Kapazitätsgrenze; entfernen Sie lokale abgelaufene Kopien nach erfolgreicher Übertragung des Archivs.
GitLab CI

macOS Runner

  1. RegistrierungLegen Sie Zuständigkeitsbereich und Ausführungsart des Runners fest, prüfen Sie die Verzeichnisberechtigungen des Build-Benutzers und speichern Sie Registrierungszeitpunkt und Konfigurationsübersicht.
  2. LabelsVergeben Sie Labels für macOS, Chipklasse, Xcode-Hauptversion und Aufgabentyp. Jobs ohne Labels dürfen keinen dedizierten Knoten versehentlich belegen.
  3. ParallelitätSetzen Sie die anfängliche Parallelität auf 1. Erhöhen Sie sie erst, wenn Aufgabenverzeichnisse, Ports, Caches und Signaturmaterial vollständig isoliert sind.
  4. BereinigungBereinigen Sie am Ende jedes Jobs geheime Dateien und temporäre Artefakte im Arbeitsverzeichnis. Auch fehlgeschlagene Jobs müssen bereinigt werden; bereinigte Protokolle werden separat aufbewahrt.

Minimale Validierungsmatrix vor dem Start

Checkout ✓ Abhängigkeiten wiederherstellen ✓ Build ✓ Test ✓ Artefakte exportieren ✓ Geheimnisse bereinigen ✓

Remote-Desktop

Bei Remote-Desktop-Problemen zuerst Bild, Eingabe und Sitzung unterscheiden

Das VNC-Erlebnis hängt zugleich von lokalem Netzwerk, regionsübergreifendem Routing, Auflösung und Änderungsrate des Bildschirms ab. Erfassen Sie zunächst Knoten und lokalen Netzwerkstatus und ändern Sie anschließend jeweils nur eine Variable zum Vergleich.

Was tun bei Verzögerungen oder ruckelndem Scrollen?

Notieren Sie Knoten, lokalen Netzwerktyp, Testzeit und das Vorhandensein eines Proxys. Reduzieren Sie zunächst Auflösung und Bildqualität des Remote-Desktops und deaktivieren Sie dauerhaft wechselnde Animationen oder Videos. Vergleichen Sie anschließend die Eingaberückmeldung. Verbessert sich ein Ersatznetzwerk deutlich, prüfen Sie lokale Überlastung oder Richtlinien; zeigen mehrere Netzwerke gleichzeitig dasselbe Verhalten, übermitteln Sie Knoten und Zeitstempel.

Was tun bei falscher Auflösung oder fehlerhafter Skalierung?

Stellen Sie in einer Umgebung mit nur einem Monitor zunächst eine gängige Auflösung ein und bauen Sie die Sitzung neu auf. Prüfen Sie, dass Client-Skalierung und entfernte Anzeigeeinstellungen nicht gleichzeitig vergrößern. Für Aufzeichnungen bewahren Sie Fenstergröße des Clients und Auflösungswerte der Gegenstelle auf.

Was tun bei abweichenden Tastenkürzeln oder Symbolen?

Prüfen Sie das Tastaturlayout lokal und auf der Gegenstelle und testen Sie Buchstaben, Zahlen, Symbole und Tastenkombinationen in einem reinen Texteditor. Tritt das Problem nur in einer bestimmten Anwendung auf, notieren Sie Anwendung und Tastenkürzel. Bei allen Anwendungen fügen Sie beide Layouts und die Client-Version hinzu.

Soll der Knoten nach einer Sitzungsunterbrechung sofort neu gestartet werden?

Starten Sie nicht sofort neu. Prüfen Sie zunächst, ob das lokale Netzwerk gewechselt hat, das Gerät im Ruhezustand war, VNC getrennt wurde, SSH aber noch erreichbar ist, und notieren Sie den Unterbrechungszeitpunkt. Bei SSH-Zugriff sichern Sie zuerst Arbeitsstand und relevante Protokolle. Sind beide Protokolle nicht erreichbar, erstellen Sie über die Konsole ein Ticket.

Welche Informationen vor einer erneuten Verbindung aufbewahren?

Bewahren Sie Knoten, Protokoll, lokales Netzwerk, Client-Version, Zeitpunkt des letzten Erfolgs, Unterbrechungszeitpunkt und Originalfehler auf. Ändern Sie beim erneuten Verbinden nur eine Bedingung, etwa Netzwerk oder Auflösung, und dokumentieren Sie das Ergebnis.

Verantwortung für den Speicher

Speicher, Backups und Export vor Ablauf der Mietdauer

Arbeitsverzeichnisse auf physischen Knoten eignen sich für Builds und Experimente, sollten aber nicht die einzige Kopie von Code, Zertifikaten, Modellen oder Build-Artefakten sein. Datenmigration, externe Backups und der abschließende Export müssen vom Team in die Projektplanung aufgenommen werden.

01

Vor der Migration klassifizieren

Teilen Sie Daten in vier Gruppen ein: aus dem Repository wiederherstellbar, aus Abhängigkeitsquellen rekonstruierbar, zwingend zu sichern und nicht hochzuladen. Schätzen Sie die Spitzenkapazität von Projekt, Abhängigkeiten, Derived Data, Archiven und Protokollen; betrachten Sie nicht nur die Größe des Quellcodes.

02

Externes Backup mit Wiederherstellungstest einrichten

Wichtiger Code, Zertifikate, Modelle, Datensätze und finale Artefakte sollten an einem vom Team kontrollierten externen Backup-Ort gespeichert werden. Führen Sie regelmäßig Wiederherstellungstests durch und stellen Sie sicher, dass das Backup nicht nur Dateilisten, sondern nutzbare Inhalte enthält.

03

Sensible Anmeldedaten verwalten

Konfigurieren Sie Anmeldedaten mit den geringstmöglichen erforderlichen Berechtigungen und trennen Sie manuelle Nutzung von Pipeline-Zwecken. Schreiben Sie sie nicht in Shell-Verlauf, Repositorys, gewöhnliche Umgebungsdateien oder Build-Artefakte und löschen Sie alte Kopien nach der Rotation umgehend.

04

Cache-Wachstum kontrollieren

Legen Sie Aufbewahrungsregeln für Abhängigkeits-Caches, Derived Data, Simulator-Daten und Archive fest. Prüfen Sie vor dem Löschen, dass Inhalte regenerierbar sind. Bei knappem Speicher entfernen Sie zuerst abgelaufene Caches und bereits übertragene Artefakte.

Vor Ablauf

Checkliste vor Ablauf der Mietdauer

  • Nicht übertragenen Code, Datensätze, Modelle, Archive und Testergebnisse exportieren
  • Dateianzahl, Größe und wichtige Prüfsummen der externen Kopie prüfen
  • Runner stoppen und den entsprechenden Ausführungsknoten aus der Pipeline entfernen
  • Token, SSH-Schlüsselberechtigungen und temporäre Zugriffsdaten widerrufen
  • Geschäftsdaten, geheime Dateien und nicht mehr benötigte Protokolle vom Knoten löschen
  • Mietdauer, Verlängerungsstatus und Endzeitpunkt der Bestellung in der Konsole prüfen

Support-Ticket

Ein direkt reproduzierbares Ticket erstellen

Bei einem Fehler des gemieteten Knotens melden Sie sich vorrangig in der Konsole an und erstellen Sie ein Ticket. Die Konsole verknüpft das Problem mit der Bestellung, sodass Modell, Knoten und Bereitstellungsstatus geprüft werden können. Falls Sie die Konsole nicht öffnen können, senden Sie eine E-Mail an support@armmacs.com.

ticket-evidence.txt
Bestellnummer:
Modell:
Knoten:
Problemtyp:
Zeitpunkt und Zeitzone:
Zeitpunkt des letzten Erfolgs:
Reproduktionsschritte:
Erwartetes Ergebnis:
Tatsächliches Ergebnis:
Originalfehler:
Letzte Konfigurationsänderung:
Lokaler Netzwerkstatus:
Anhänge: bereinigte Protokolle / Screenshots

Reproduktionsschritte müssen ausführbar sein

Beschreiben Sie Verbindungsart, ausgeführte Befehle, Zielprojekt und Fehlerphase in der tatsächlichen Reihenfolge. Falls das Problem nicht bei jedem Versuch auftritt, nennen Sie Häufigkeit und bereits geprüfte Vergleichsbedingungen.

Zeitstempel müssen die Zeitzone enthalten

Verwenden Sie vollständiges Datum, Stunde, Minute und Zeitzone. Angaben wie „gerade eben“ oder „heute“ lassen sich nicht zuverlässig mit Knotenereignissen und Runner-Protokollen abgleichen.

Anhänge zuerst bereinigen

Screenshots und Protokolle dürfen keine Passwörter, privaten Schlüssel, Token, Zertifikatpasswörter oder Geschäftsdaten enthalten. Bewahren Sie Originalfehler, Exit-Code und erforderlichen Kontext auf.

Bereit für die Diagnose

Knoten, Zeitstempel und Protokolle sind vorbereitet

Melden Sie sich in der Konsole an, verknüpfen Sie die Bestellung und erstellen Sie ein Ticket. Die Abrechnung erfolgt ausschließlich in US-Dollar; unterstützt werden USDT-TRC20 sowie Visa / Mastercard / Amex (über Stripe). Welche Gateways tatsächlich verfügbar sind, zeigt die Konsole.