InfraDesktop-App · 2026–2026abgelöst
Runbook Runner
macOS-App, die Ansible-Playbooks und Bash-Skripte startet.
↻ Abgelöst durch Semaphore UI
Was es macht
Runbook Runner ist eine macOS-App, die Ansible-Playbooks und Skripte aus einem Ordner startet. Sie zeigt die Ausgabe live, merkt sich jeden Lauf und fragt Parameter vorher ab. Gedacht ist sie für den Moment, in dem ich am Mac sitze und einen Job von Hand anstoßen will, ohne die Befehlszeile zusammenzusuchen.
Wie es funktioniert
- Ordner statt Register: Unterordner werden Kategorien,
.ymlwird mitansible-playbookgestartet,.shmitbash,.pymituv run, JS/TS mitbun. Eine neue Datei erscheint ohne weitere Pflege. - Optionale Metadaten:
_category.jsonsetzt Namen, Beschreibung, Timeout und Parameter;.runbookrunner.jsonliefert Inventory,PATHund Umgebungsvariablen. Fehlerhafte Metadaten brechen die Suche nicht ab. - Ausführung: Mehrere Skripte laufen parallel, jedes mit eigener Konsole
inklusive ANSI-Farben. Bei Ansible entscheidet der
PLAY RECAPüber Erfolg oder Fehler. Abbrechen sendetSIGTERM. - Zeitpläne: Die App liest crontab und LaunchAgents und ordnet Einträge den passenden Skripten zu – nur zur Anzeige, geplant wird weiter dort.
- Aufbau: SwiftUI mit Swift Package Manager; die Logik liegt in einem getesteten Kit-Target, das App-Target enthält nur den Einstieg.
swift test
swift run RunbookRunner
Stand
Der Großteil entstand am 2026-07-17 und 2026-07-18; der letzte Commit ist vom 2026-08-16, insgesamt 32 Commits. 88 XCTest-Fälle decken Discovery, Ausführung, Historie und Zeitpläne ab. Die App ist nicht sandboxed und damit ein lokales Werkzeug, kein App-Store-Produkt. Seit Sommer 2026 wird es nicht mehr weiterentwickelt.
Warum abgelöst
Runbook Runner war eine von drei Oberflächen rund um dieselben Playbooks: daneben gab es ein Dashboard für die Laufhistorie und eines für Logs. Eine Entscheidungsnotiz zur Konsolidierung hält fest, dass die Web-Oberfläche von Semaphore UI das Starten von Hand übernimmt. Sie läuft auf einem ständig erreichbaren Server statt nur auf dem Mac, ist von jedem Gerät aus bedienbar und hat eine API. Zeitpläne, Läufe und Verlauf liegen damit an einer Stelle. Die Playbooks selbst blieben unverändert.