Mein Team hat eine große Anzahl von Kochbüchern erstellt. Ich habe mich gefragt, welche Methoden und Frameworks ich untersuchen soll, damit wir Tests erstellen können, um sicherzustellen, dass unsere Knoten ordnungsgemäß konfiguriert sind.
testing
configuration-management
chef
automated-testing
chef-solo
linusthe3rd
quelle
quelle
Antworten:
Sie könnten (auch) Vagrant dafür untersuchen.
Ein Video zeigt, wie die Kombination aus Vagrant- und Chefkochbüchern verwendet wird. Und auf der Opscode-Site gibt es eine spezielle Seite für Vagrant und Chef (Update 23.01.2015: Seite ist verschwunden ...).
quelle
Es gibt das
cucumber-chef
Rubinjuwel und ein kürzlich veröffentlichtes Buch, Nelson-Smith et al. - "Test-driven Infrastructure with Chef", das dieses Juwel nutzt - http://www.cucumber-chef.org/Ich erinnere mich gerade daran von meiner Github-Beobachtungsliste: https://github.com/gregretkowski/vmth/
quelle
Es gibt eine Reihe von Optionen.
Opscode hat auf der Chef-Entwicklungs-Roadmap "No-Op" -Unterstützung, die beim Testen helfen wird. Wir argumentieren, dass "no-op" nicht unbedingt das tut, was Sie wollen, sondern den Wunsch nach der Funktion versteht.
quelle
Einige der Antworten hier scheinen ein bisschen alt zu sein. Für CI- und lokale Tests würde ich ein Test-Harness-Tool wie Test Kitchen einsetzen, das auch Vagrant unterstützt, wenn Sie das bereits verwendet haben.
Damit können Sie Ihre Coobkooks mit vielen Cloud- und Virtualisierungslösungen betreiben, die es heute gibt: EC2, Digital Ocean, Vagrant, Docker usw.
Es verfügt auch über Plugins, mit denen Sie eines der vielen heute verfügbaren Infrastruktur-Test-Tools ausführen können:
quelle
Nach meiner Erfahrung ist der einzige Weg, dies wirklich zu tun, eine Staging-Umgebung und sorgfältige Entwicklungspraktiken. Das Verspotten der tatsächlich zu erledigenden Arbeit ist unglaublich chaotisch und fragil, und CI-Testsuiten, die auf Commit oder Push ausgeführt werden, sind mit viel Aufwand zu schreiben und zu warten (obwohl Chefkoch darin wahrscheinlich viel besser ist als Puppet, was meine Haupterfahrung ist ), und nehmen Sie sich lächerlich viel Zeit zum Laufen.
BEARBEITEN
Kurz nachdem ich dies geschrieben hatte, wurde mir plötzlich klar, dass es eine Möglichkeit geben könnte, einigermaßen effiziente "Unit" -Tests von Chef / Puppet-Rezepten mit einem Union-Dateisystem und einer beträchtlichen Menge an Gerüsten durchzuführen. Allerdings kann ich dort nichts herausfinden, was schon jemand in diesem Bereich gemacht hat. Vielleicht habe ich gerade ein Projekt gefunden.
quelle