質問

テンプレートファイルのERB解釈を行うPuppetテンプレートを使用しています。私が利用できるすべての変数を知りたいのですが、私が知っている反射方法のいずれにもリストされていない、特にこれらのいずれもリストされていない変数(例:FQDN)があります。

<% Module.constants.each do |v| %># module constant: <%= v %>
<% end %>
<% Kernel.local_variables.each do |v| %># local variable: <%= v %>
<% end %>
<% Kernel.instance_variables.each do |v| %># instance variable: <%= v %>
<% end %>
<% Module.class_variables.each do |v| %># class variable: <%= v %>
<% end %>
<% Kernel.global_variables.each do |v| %># global variable: <%= v %>
<% end %>

これらを私に明らかにするERBの余分な反射方法はありますか?

役に立ちましたか?

解決

「すべてのクライアント変数を見る」 あなたが望むことをするべきです

他のヒント

Puppetテンプレートについては本当に知らないでください fqdn ローカル変数であり、呼び出します local_variables (ように self.local_variables)それを表示する必要があります。

私はErbの組み込みの反射手段についてしたいほど知りませんが、人形では、ハッシュが戻ってきたと思います scope.to_hash おそらくあなたが望むものです。から テンプレートリファレンス:

<% scope.to_hash.keys.each do |k| -%>
<%= k %>
<% end -%>

あるいは、エージェントノードが供給する変数を一度だけ見たい場合は、実行できます facter ノード上。それがパペットがそもそもそのすべての情報を得る方法です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top