Chef-plain-ruby-with-dsl
提供:Dev Guides
Chef-Chef DSLを使用したプレーンRuby
Chefでは、単純なレシピを作成する必要がある場合、テンプレート、remote_file、サービスなど、Chefで利用可能なリソースを使用できます。 ただし、レシピが複雑になると、条件に応じてレシピの一部を実行する条件ステートメントなどの高度なテクニックが必要になります。 これは、プレーンRubyとChef Domain Specific Language(DSL)を混合する力です。
それの使い方?
クライアントモードのいずれかのノードでChef Shellを起動して、Chefサーバーにアクセスできるようにします。
Chef DSLの基本条件
プレーンRubyを使用して名前でノードを並べ替えます。
ノードをループし、オペレーティングシステムを印刷します。
配列、ループ、および文字列拡張を使用して複数のRuby gemをインストールし、gem名を作成します。
作業方法
ChefレシピはRubyファイルであり、Chef runのコンテキストで評価されます。 これらには、ifステートメントやループなどの単純なRubyコード、およびリソースなどのChef DSL要素を含めることができます。
レシピ内では、Ruby変数を単純に宣言して値を割り当てることができます。