[英]Add some debug to a puppet custom type
我在/etc/puppet/modules/tipo/lib/puppet/type/customtipo.rb中有一個人偶自定義類型,其內容是:
require 'logger'
Puppet::Type.newtype(:customtipo) do
newproperty(:parametro) do
log.info("ES UN PARAMETRO")
end
end
我知道這是一個虛擬的自定義類型,但是我從這種事情開始,資源位於/etc/puppet/modules/tipo/manifests/init.pp中,其內容為:
class tipo {
customtipo {
"ejemplo":
parametro => "uno",
}
}
情況是“ parametro”還是沒有如我所料顯示“ ES UN PARAMETRO”消息。 還有其他使用自定義類型實現此目標的方法嗎? 謝謝!
請注意, log
命令將在Ruby運行時加載您的類型時運行,而不是在編譯器遇到您類型的資源時運行。
還要注意,Puppet在Puppet::Util::Logging
中具有自己的日志記錄框架,該框架可以混合成任何類型。 您始終可以只是Puppet.info
或Puppet.debug
。
要了解如何調試類型代碼,您應該熟悉可用的鈎子。 查看Puppet自己的源代碼中的現有類型。 您可以從以下內容開始:
Puppet::Type.newtype(:customtipo) do
newparam(:parametro) do
# no actual validation, just logging to get started
validate do |value|
Puppet.info("parameter 'parametro' has value '#{value}'")
end
end
end
請注意,我改變newproperty
到newparam
,因為你不希望有一個名為“參數”的屬性。 那真是令人困惑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.