我正在尝试编写一个自定义的facter模块,它通过连接命令字符串和一个facter事实变量,在命令的事实中包含一个事实:
Facter.add("customfact") do
setcode do
$string_to_parse = Facter::Util::Resolution.exec('somecommand' + $::fact)
end
end
红宝石和木偶新手...... 1.用这个做什么的正确语法是什么?
以下是使用以下命令生成的输出示例:
TAG security-group sg-0a7a8a61 aws:cloudformation:stack-name awseb-e-5tzgj9fq5b-stack
我需要安全组和堆栈名称。
答案 0 :(得分:0)
您希望在新事实中使用Facter.value(:sourcefact)
来访问变量。至于获取单个值,您可能希望将它们作为单独的事实,但您可以管道'somecommand' + Facter.value(:sourcefact) + ' | awk {"print $3"}'
将为您提供安全组(作为示例)。