此puppet清单将删除文件/etc/file.txt
(如果存在):
file { "/etc/file.txt":
ensure => absent,
}
如何告诉puppet删除所有文件/etc/*.txt
?
根据参考文献,似乎puppet file
不允许使用通配符。
http://docs.puppetlabs.com/references/latest/type.html#file
ps:我知道我可以从puppet执行一个脚本,但我更喜欢另一种更优雅的方式。
答案 0 :(得分:9)
这里有一个内置类型'tidy',它允许你指定要删除的文件的文件glob模式。
在http://docs.puppetlabs.com/references/latest/type.html#tidy处查看。
答案 1 :(得分:6)
您可以使用整齐的glob模式:http://docs.puppetlabs.com/references/latest/type.html#tidy
所以这将是你的解决方案:
tidy { "delete-txt-files-in-etc":
path => "/etc",
recurse => true,
matches => [ '*.txt' ],
rmdirs => false,
}