2017-10-10 1 views
0

マイコンというノードがあるとします。そして、それはrun_list say myroleのような役割を担っています。ノードはどのようにして役割ファイルを読み込むことができますか?

さて、MYCOMPUTERはそれのrun_listに存在している役割のファイルにアクセスし、読みたいです。

これを行う方法はありますか?


それはknife.rbおよびユーザーkey.pemファイル(.chefディレクトリ)を持っていないので、それはそれにアクセスすることができないとして、私は

knife role show myrole 

を試してみました。


ロールファイルにアクセスする方法があるかどうか教えてください。 myrole

答えて

1

ノード "mycomputer"には実行リストの特定の役割が適用されていると書かれているので、含まれる情報は「自動的に」利用可能な種類です。正確には、属性(および追加の実行リスト項目)は、環境、料理帳などの他の属性と自動的にマージされます。

だから自分の役割「myRoleのは、」次の属性を定義した場合:

node['apache2']['listen_ports'] 

属性を経由して

default_attributes 'apache2' => { 
    'listen_ports' => [ '80', '443' ] 
} 

これはあなたのノード上のシェフの実行時にアクセスできるようになりますが、シェフの基本的な概念でありますいくつかの情報を役割に定義し、シェフがあるノードで実行している間にそれを読むために、問題を解決する必要があります。

詳細については、Attribute Precedenceに関するドキュメントを参照してください。普通のファイルを読む方法は実際にはありません。あなたが本当にそうする必要があると思うなら、あなたは間違った方法でシェフを使用しています。あなたの究極の目標は、あなたの次の質問でより良い状態。

+0

私の要件は、ロールファイルから属性にアクセスすることでした。はい、あなたは* node *の属性にマージされるのは間違いありません。私はこの部分を見落とし、実際には「シェフを間違った方法で」使用していました。辛抱強く私を助けてくれてありがとう:) – srajappa

関連する問題