有没有办法在 Puppet 中执行命令之前将消息打印到控制台。例如,假设我的清单有:
exec {
command => 'mycommandhere'
}
我想打印一条消息,内容是“正在运行我的命令”。除了在它之前调用另一个命令来打印之外,还有其他简单的方法可以做到这一点吗?
答案1
当然,只需将两个资源链接在一起即可:
notify { 'some-command':
message => 'some-command is going to be executed now'
}
exec { 'some-command':
command => '/path/to/some-command',
}
Notify['some-command'] -> Exec['some-command']
答案2
除了将其作为 exec 的一部分之外,没有其他方法可以编写 Puppet 清单以在 exec 资源之前准确打印消息。对于打印消息的一般情况,请查看通知。对于您的具体情况,也许在详细或调试模式下运行 Puppet 会起作用。
答案3
您可以使用notice()
或warning()
(取决于您想告诉用户什么)
notice( 'some-command is going to be executed now' )
然后就exec
在那条线之后。