DevOps und Cloud-Reifegradmodelle verstehen: Ein Leitfaden zur Verbesserung Ihrer IT-Strategie
Im heutigen schnelllebigen Technologiebereich sind DevOps- und Cloud-Praktiken entscheidend, um die Software-Bereitstellung zu beschleunigen und
ChefSpec ist ein Unit-Testing Framework zum Testen von Cookbooks. ChefSpec macht es Ihnen einfach, Beispiele zu schreiben und schnelles Feedback zu Cookbook Änderungen zu erhalten, ohne dass dafür virtuelle Maschinen oder Cloud-Server benötigt werden.
ChefSpec stellt eine Methode bereit, mit der wir eine speicherinterne Ausführung erstellen mit dem Anwenden der Run-Liste, die Ressourcenauflistung erstellen und dann Erwartungen über den Status der Ressourcenauflistung festlegen können. ChefSpec, ähnlich wie InSpec, baut auf RSpec auf. Der Vorteil für uns ist, dass viele der gleichen Sprachkonstrukte verwendet werden.
Bei der Erstellung von Recipes erhalten wir auch eine passende Spezifikationsdatei im Verzeichnis 'spec / unit'. Die von ChefSpec definierten Spezifikationen sind alle in diesem Verzeichnis enthalten.
1require 'chefspec'
2require 'chefspec/berkshelf'
3
4describe 'git::default' do
5 let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
6
7 it 'install git package' do
8 expect(chef_run).to install_package('git')
9 end
10end
Die README von ChefSpec bietet eine Menge von Beispielen. In der Vergangenheit war ein 'include_recipe' Beispiel eines von vielen in der README. Das ChefSpec-Projekt enthält einen übergeordneten Ordner mit dem Namen "examples", der Beispiele für fast alle Funktionen enthält, mit denen ChefSpec Erwartungen definieren kann. Dieser enthält einen Ordner mit dem Titel "include_recipe", in dem Recipes und die entsprechenden Spezifikationen angezeigt werden sollen.
Wollen Sie mehr über Chef und ChefSpec erfahren? Dann sehen Sie sich unsere Chef Trainings an.
Sie interessieren sich für unsere Trainings oder haben einfach eine Frage, die beantwortet werden muss? Sie können uns jederzeit kontaktieren! Wir werden unser Bestes tun, um alle Ihre Fragen zu beantworten.
Hier kontaktieren