所以我需要为 Windows 上的某些用户生成文件树。
我需要提供一个用户列表,最好来自外部事实,并让 puppet 确保一组文件位于一个目录中(但允许不同的非托管文件),并且该目录的名称如下:C:\VaultWorkspace\username \保险库
因此,我将拥有与指定用户一样多的用户名目录。我想要用户名用户拥有的用户名目录和文件......我最好的猜测如下,但它不起作用。
我见过:是否可以使用 Puppet 来确保目录中存在多个文件而不定义所有文件?它看起来像“当然,对于“/my/dir”或大量文件的长路径,它会变得有点笨拙,所以在这种情况下,你最好创建一个包含目录路径的定义,并且只需将文件名数组传递给它。” 是我想做的,但那篇文章没有解释定义......
class inventor {
case $kernel {
'linux': {
}
'windows': {
@file {'VaultWorkspace':
path => "C:/VaultWorkspace/${user}/Vault",
source => "puppet:///modules/inventor/Vault",
recurse => true,
owner => "${user}",
group => 'Users',
mode => 0755,
ensure => present,
}
realize File["$inventorusers"]
}
}
}
$inventorusers = ['username1','username2','usernamen']
定义的类型可以完成这项工作: