我有一个厨师食谱,我试图说:
"如果服务器的主机名以-1结尾,则启用并启动newrelic-sysmond和newrelic-daemon服务,否则,禁用这些服务"
使用RegEx确定主机名是否以-1结尾。
使用下面的尝试,无论主机名是否以-1结尾,服务似乎都启用并启动。我对Ruby和Chef很陌生,所以如果我的代码不正确,我不会感到惊讶:
if node["hostname"] =~ /^.*-1$/
service 'newrelic-sysmond' do
action [ :enable, :start ]
end
service 'newrelic-daemon' do
action [ :enable, :start ]
end
else
service 'newrelic-sysmond' do
action [ :disable ]
end
service 'newrelic-daemon' do
action [ :disable ]
end
end
答案 0 :(得分:0)
主机名有可能不是您的想法。您可能需要if node['machinename'] =~ /-1$/
或if node['machinename'].end_with?('-1')
之类的内容。否则看起来没问题。