我在 Puppet 中使用自定义 Ruby 函数从文件中读取文本字符串。我不是将读取的任何版本与已知版本列表进行比较,以确定我应该为该特定服务器使用哪个配置文件。问题是当我将读取的版本与我的已知版本列表进行比较时,它们都不匹配。
我将变量打印到屏幕上,看起来不错。然后我在开头和结尾添加了一个“-”,这一次,打印了以下内容
-2.2#012-
有谁知道这是什么以及如何将其删除?
这是我的过程。
处理应用程序安装的脚本
sudo echo "2.2" > /opt/version
我的红宝石功能
if FileTest.exists?("/opt/version")
Facter.add("app_version") do
setcode do
version = File.open('/opt/version', &:readline)
version
end
end
end
我的木偶清单
if versioncmp( $app_version, '2.2') == 0 {
notice("===> Installing 2.2 Configs")
} elsif versioncmp ($app_version, '2.3') == 0 {
notice("===> Installing 2.3 Configs")
} else {
notice("===> No version match. Continuing on.")
}
}