Chef-shell
提供:Dev Guides
シェフ-シェフシェル
シェフの料理本を書くのはいつも大変です。 Chefサーバーへのアップロード、Vagrant VMのプロビジョニング、そこでの失敗の確認、すすぎ、繰り返しのフィードバックサイクルが長いため、さらに困難になります。 このような重い作業を一度に行う前に、いくつかのピースやレシピをテストできると簡単です。
ChefにはChef-Shellが付属しています。これは基本的にChefとのインタラクティブなRubyセッションです。 シェフシェルでは、作成することができます-
- 属性
- レシピを書く
- Chef Runの初期化
レシピの一部をその場で評価し、それらをChefサーバーにアップロードして、ノードで完全なクックブックを実行するために使用されます。
実行中のシェル
- ステップ1 *-スタンドアロンモードでChef-Shellを実行します。
- ステップ2 *-Chef-Shellで属性モードに切り替えます
- chef> attributes_mode
- ステップ3 *-属性値を設定します。
- chef:attributes> set [:title] = "Chef Cookbook"
- 「シェフクックブック」
- chef:attributes> quit
- :属性
- *シェフ> *
- ステップ4 *-レシピモードに切り替えます。
- chef> recipe_mode
- ステップ5 *-ファイルリソースを作成します。
- ステップ6 *-指定されたコンテンツでファイルを作成するためにChefの実行を開始します。
- chef:recipe> run_chef
使い方
- Chef-Shellは、いくつかの特定の機能で強化されたInteractive Ruby(IRB)セッションで始まります。
- attributes_modeやinteractive_modeなどのモードを提供します。
- レシピまたはクックブック内に記述されるコマンドを書くのに役立ちます。
- すべてをインタラクティブモードで実行します。
Chef-Shellは、スタンドアロンモード、クライアントモード、*ソロモード*の3つの異なるモードで実行できます。
- スタンドアロンモード-これはデフォルトのモードです。 クックブックはロードされず、実行リストは空です。
- クライアントモード-ここでは、シェフシェルはシェフクライアントとして機能します。
- ソロモード-ここでは、シェフシェルはシェフソロクライアントとして機能します。