我被困在需要忽略错误并继续执行Puppet Recipe的情况下。需要忽略错误并继续执行Puppet Recipe,像厨师的“ignore_failure”
厨师是否有像“ignore_failure”这样的属性,以便我可以从下面的情况中克服。如果不是,请建议解决相同的问题。
第1步:在/ tmp目录中找到.txt文件并从/ tmp目录中删除。
第2步:执行第1步[退出代码0或1]后,必须创建当前时间打印的文件。
问题 ::如果.txt文件不在/ tmp目录中,则出现错误,第2步无法执行。的清单
件上傀儡师:
执行[ 'delete_str_tmp'] - >文件[ '/info.txt']
exec { 'delete_str_tmp':
path => [ '/bin/', '/sbin/' , '/usr/bin/', '/usr/sbin/' ],
command => "find /tmp/ -name '*.txt' -type f | xargs -n 1 rm",
}
file { '/info.txt' :
ensure => 'present',
content => inline_template("Created by Puppet at <%= Time.now %>\n")
}
当我跑“木偶剂 - 测试',它给出了以下错误:
注意:/ Stage [main]/Main/Node [app1-server]/Exec [delete_str_tmp]/returns:rm:missing operand注意:/ Stage [主] /主/节点[APP1-服务器]/Exec [delete_str_tmp] /返回:尝试'rm --help'以获取更多信息。错误:find/tmp/-name'.txt'-type f | xargs -n 1 rm & & true返回123而不是[0] Error:/ Stage [main]/Main/Node [app1-server]/Exec [delete_str_tmp] /返回:从notrun更改为0失败:find/tmp/-name'.txt'-type f | xargs -n 1 rm & & true返回123代替[0]中的一个注意:/Stage[main]/Main/Node[app1-server]/File[/info.txt]:Dependency Exec [delete_str_tmp]失败:真正的警告: /Stage[main]/Main/Node[app1-server]/File[/info.txt]:因为依赖失败的跳绳
http://serverfault.com/questions/450602/puppet-error-returned-1-instead-of-one-of-0说:“你可以将'returns'设置为成功期望的退出代码集“ –
谢谢杰里,我已经在成功的exec资源中设置了预期的退出代码。从这我可以忽略错误并继续执行Puppet Recipe。 Exec ['delete_str_tmp'] - >文件['/info.txt'] exec {'delete_str_tmp': path => ['/ bin /','/ sbin /','/ usr/bin/','/ usr/sbin /'], command =>“find/tmp/-name'* .txt'-type f | xargs -n 1 rm”, returns => [123] } file {'/info.txt': ensure =>'present', content => inline_template(“由Puppet在<%= Time.now%>创建\ n”) } –