如何解决如何使用 Puppet 复制包含文件的目录
我正在寻找使用 Puppet 复制其文件的目录。 该目录以及大多数文件/子目录在复制时已经存在。
该副本适用于新文件并删除不在源文件中的文件,但现有文件没有被更新。
例如,如果 dir/index.html
不存在,则会创建它,但即使源包含文件的更新版本也不会更新。
寻求有关如何告诉 puppet 复制/覆盖目录中所有文件的帮助。不确定我是否应该使用 force
之类的东西来实现这一点。
file { "${directory}":
ensure => directory,owner => $user,group => "$user",mode => '0755',recurse => true,source => "puppet:///modules/role/${directory}",} ->
提前致谢
解决方法
根据documentation for the file
resource,您的配置是正确的,应该替换与源不匹配的文件。此行为是通过将 recurse
设置为 true
来配置的。
我注意到 force
选项仅适用于目录。它是适用于文件的 replace
属性。鉴于文件没有被替换,是否有可能将 replace => false
设置为清单中某处文件资源的默认属性?默认设置看起来像
File {
replace => false,}
正如 John 在评论中提到的,您可以通过在文件资源中显式设置 replace
来覆盖默认值:
file { $directory:
ensure => directory,owner => $user,group => $user,mode => '0755',recurse => true,replace => true,source => "puppet:///modules/role/${directory}",}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。