03
Erste Abnahme: OCI-Images und wiederholbare Abhängigkeitstests
Wählen Sie für den Pilotbetrieb nicht das einfachste Demo-Image, sondern ein vorhandenes Team-Image mit repräsentativen Abhängigkeiten. Es sollte einen typischen Buildschritt, einen Testschritt, einen Cache und ein auszulieferndes Artefakt enthalten. So lässt sich erkennen, ob Apple container tatsächlich eine bisher native Linux-Hilfsaufgabe übernehmen kann.
Schritt 1: Eine Referenzpipeline festlegen
Dokumentieren Sie zunächst den unveränderten Ablauf:
- verwendetes OCI-Image und dessen Herkunft,
- benötigte privaten Pakete und Registry-Zugänge,
- Eingabedateien und erwartete Artefakte,
- Cache-Verzeichnis und Cache-Lebensdauer,
- Exit-Codes sowie Kriterien für einen erfolgreichen Lauf.
Die Referenz muss nicht schnell sein. Sie muss vergleichbar sein. Ohne festgelegte Eingabe und Ausgabe kann ein zweiter Lauf zwar erfolgreich erscheinen, aber ein anderes Artefakt erzeugen.
Schritt 2: Pull, Build und Ausgabe getrennt prüfen
Führen Sie den Image-Pull mit den vorgesehenen Registry-Zugangsdaten aus. Danach bauen Sie das Image oder die Abhängigkeiten in der kontrollierten Umgebung. Prüfen Sie anschließend, ob das erwartete Artefakt am vorgesehenen Ort liegt und ob keine zusätzlichen Hostdateien verändert wurden.
Beim Cache sind drei Zustände wichtig: leerer Cache, bereits gefüllter Cache und Cache nach einem fehlgeschlagenen Lauf. Ein gefüllter Cache darf keinen Erfolg vortäuschen, wenn eine Abhängigkeit inzwischen nicht mehr verfügbar ist. Die Dokumentation zu Volumes und Mounts ist für die Prüfung der Pfade maßgeblich.
Schritt 3: Wiederholung und Neustart protokollieren
Wiederholen Sie denselben Job unter identischen Eingaben. Prüfen Sie nicht nur den Exit-Code, sondern auch Prüfsummen, Dateiliste und relevante Testberichte. Danach starten Sie den Containerdienst oder den Host kontrolliert neu und führen den Ablauf erneut aus.
Wir geben bewusst keine Laufzeit oder Leistungsquote an, solange dafür kein eigenes, reproduzierbares Protokoll vorliegt. Die richtige Abnahmefrage lautet zunächst: Sind Eingabe, Ausgabe, Cache und Fehlerverhalten nachvollziehbar? Erst danach ist eine Kapazitätsplanung sinnvoll.
Das Ergebnis sollte jede Teilaufgabe einer von drei Gruppen zuordnen:
- Containerfähig: Der Linux-Schritt ist reproduzierbar und kann aus dem nativen Mac-Workspace herausgelöst werden.
- Containerfähig mit Auflagen: Der Schritt benötigt einen bestimmten Proxy, einen kontrollierten Mount oder eine gesonderte Cache-Strategie.
- Mac-gebunden: Der Schritt benötigt Xcode, Simulator, Signierung, Notarisierung oder eine andere native Apple-Umgebung.