(see below for english content). Nachdem wir Github Boxen (basierend auf Puppet) zum installieren unserer Macs ausprobiert haben, sind wir letztendlich bei Ansible gelandet. Jetzt haben wir unsere Methodik auf GitHub veröffentlicht.
Das Problem
Wir entwickeln in recht vielen Programmiersprachen, benötigen eine ganze Reihe von Tools und wollen Neuinstallationen (z.B. bei neuen Mitarbeitern oder Hardware-Ausfällen) beschleunigen. Die Nutzung von Vagrant o.ä. fanden wir immer etwas zu "schwergewichtig".
Wir nutzen schon seit längerem Server-Automationstools für die Konfiguration unserer Server (zuerst Puppet, dann Chef). Daher war es naheliegend, auch diese Tools für die Konfiguration unserer MacBooks zu verwenden. Nachdem wir auf GitHub Boxen (basierend auf Puppet) gestoßen sind, haben wir dies auch recht schnell eingesetzt.
Leider hat sich Boxen für uns als relativ instabil herausgestellt – das mag auch daran liegen, dass wir in der Ruby-Welt (Gems, Bundler, Librarian, ...) nicht so richtig zu Hause sind. Bei jeder Systeminstallation ging irgend etwas schief, und es war recht kompliziert zu debuggen und zu installieren.
Ansible betritt die Bühne
Ich wollte schon seit Längerem Ansible ausprobieren, da es sich sehr leichtgewichtig anfühlte. Vor Kurzem bin ich dann auch ein Projekt gestoßen, welches Ansible für die Mac OS X-Automatisierung verwendet. Nach genauerer Betrachtung hat sich herausgestellt, dass man hierfür eigentlich gar kein spezielles Projekt benötigt – Ansible Core läuft wunderbar auf Mac OS X.
Wir haben, nach einem Tag Testphase, uns sehr schnell entschieden, von Boxen zu Ansible zu migrieren – und dies bereuen wir bis heute nicht, im Gegenteil. Mittlerweile pflegt das ganze Team die Konfiguration; jeder fügt mal etwas hinzu oder baut einen Teil um. Selbst wenn mal ein Fehler auftritt ist dieser sehr schnell behoben.
Wollt ihr auch haben?
Wir haben unser Ansible-Konfigurations-Git-Repository (ohne die firmenspezifischen Teile) auf GitHub gestellt. Viel Spaß beim Forken; wir freuen uns sehr über Pull Requests und Feedback!
PS: Wir sind immer auf der Suche nach neuen Teammitgliedern, die uns verstärken! Bewerbungen nehmen wir jederzeit auf team(at)sandstorm-media.de entgegen.