gpt4 book ai didi

ruby - facter 的 puppet 自定义事实

转载 作者:数据小太阳 更新时间:2023-10-29 07:50:32 25 4
gpt4 key购买 nike

尝试编写自定义因子模块:

Facter.add("something_status") do
setcode do
$string_to_parse = Facter::Util::Resolution.exec('somecommand --print ')
... do something to string
return something-new
end
end

对 ruby​​ 很陌生...用这个做某事的正确语法是什么?

最佳答案

你离这样做不远了..你不需要在变量名前加 $ 并且你不应该以 return 结尾。 Facter 将检索范围内的最新变量。

下面是一个示例代码,它分析 uname 输出并返回一个带有关于内核版本及其 ipv6 支持的字符串的事实。

这只是一个例子,但它确实有效,只是试过了。

Facter.add("customer") do
setcode do
kernel_release = Facter::Util::Resolution.exec('/bin/uname -r')
# Get version
if kernel_release =~ /^3.2/
answer = "Latest Kernel"
elsif kernel_release =~ /^3.0/
answer = "3.0 Kernel"
elsif kernel_release =~ /^2.6/
answer = "Decent Kernel"
else
answer = "Unknown Kernel"
end
if answer =~ /ipv6/
answer += " with IPV6 Support"
else
answer += " without IPV6 Support"
end
end
end

祝你好运!

一些对您有用的链接:Ruby Wikibooks Control Structures , more ruby info

关于ruby - facter 的 puppet 自定义事实,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12736749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com