假设你有这样的文件指令:
***SNIP*** file: "/tmp/file_I_need": path => "/tmp/file_I_need", ensure => "present", source:[ "puppet://$fileserver/files/$name/file_I_need", "puppet://$fileserver/files/$group/file_I_need", "puppet://$fileserver/files/default/file_I_need", ]; ***SNIP***
然后每个文件都是这样的:
files/name_that_exists>/file_I_need files/group_that_exists>/file_I_need files/default/file_I_need
问题是这样的:
如何知道哪个源文件木偶正在使用? 如果我在不同的主机上运行木偶,我期望不同的文件,我知道它会使用匹配的文件。
没有修改文件,看看是否有变化,有没有办法看到它所select的3个源文件中的哪一个?
这是木偶2.6.2。(在Debian上运行的服务器)
注意:
我正在寻找一种不同于使用文件散列的方法。 我也不喜欢在每个文件中放置文件名(或类似文件)的解决scheme。 我想知道如何从傀儡的path。
将$ hostname放在文件名或目录名称中:
source => ["puppet://${fileserver}/files/${name}/file_for_${hostname}.txt", "puppet://${fileserver}/files/${name}/file_for_default_host.txt"]