Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当puppet想要更改某些内容时通知_Puppet - Fatal编程技术网

当puppet想要更改某些内容时通知

当puppet想要更改某些内容时通知,puppet,Puppet,我目前正在我们的环境中实现puppet,但是,我有一个请求,我不知道puppet本身是否可以满足 如果我在/etc/myconfig.conf下有一个配置。我希望它只有在不存在的情况下才被写出来;我可以使用onlyif函数。但是,如果puppet检测到文件中的更改,是否有任何方法可以让它执行某些操作,比如notify()或其他操作 我不希望它实际更改文件,只是通知我文件不是它想要的方式 在这个问题上确实没有例子或任何东西,但我希望有人能把我推向正确的方向。如果我根据提示为这个问题创建了一个解决方

我目前正在我们的环境中实现puppet,但是,我有一个请求,我不知道puppet本身是否可以满足

如果我在/etc/myconfig.conf下有一个配置。我希望它只有在不存在的情况下才被写出来;我可以使用onlyif函数。但是,如果puppet检测到文件中的更改,是否有任何方法可以让它执行某些操作,比如notify()或其他操作

我不希望它实际更改文件,只是通知我文件不是它想要的方式

在这个问题上确实没有例子或任何东西,但我希望有人能把我推向正确的方向。如果我根据提示为这个问题创建了一个解决方案,我将自己发布答案,供其他人学习


感谢您仅在文件不存在时创建文件,请尝试将“替换”设置为false,如下所示:

file { "/etc/myconfig.conf":
  ensure => present,
  source => "puppet:///modules/${module_name}/myconfig.conf",
  replace => false,
}
相关文件如下:

对于通知,puppet auditing将执行您需要的操作:

听起来你想让puppet提醒你它会做的任何改变,而不是去做

为此,只需使用noop(--noop)运行


它会告诉您它将要做的每一个更改,但不会执行这些更改。

审计看起来是正确的方法。我没有在文档中找到audit,但感谢您指出一个问题:)您可能不想在100多个节点上手动运行它。因此,您会收到一封通知电子邮件,告诉您将要更改的内容。