我正在尝试使用inifile创建一个木偶清单。这将是一个配置文件,我需要有以下格式。
[safe]
directory = /home/foo
directory = /home/test
directory = /home/something
我知道有一种方法可以使用directory1和directory2,但我想知道是否有一种方法可以在不改变目录的情况下做到这一点,因为它需要特定的属性。这个实现是针对傀儡清单的。此外,我正在考虑puppetlabs/inifile
模块,但如果有另一种选择来实现这一点也会很棒。
谢谢你的帮助
到目前为止,我有一个这样的实现:ini_setting { 'procedure cache size':
ensure => present,
path => '/var/lib/somethning/test.config',
section => 'safe',
setting => 'directory',
value => '/home/foo',
indent_char => "t",
}
对于每个目录。这个实现的目的是解决safe的新git配置。最近更新的存储库。我的理解是,对于多个目录,它添加了一个新值directory = <directory>
,我不相信它喜欢目录用逗号分开。
首先我想到了file_line
,但这对于多行设置不是幂等的(当您再次运行时您会遇到问题)。你可以试试:示例傀儡代码dir.pp
$safe_directories="directory = /home/foo
directory = /home/test
directory = /home/something"
notice "Testingn${safe_directories}"
file { "/tmp/result.ini":
ensure => present,
content => template('/tmp/layout.erb'),
}
notice "Check /tmp/result.ini"
模板示例/tmp/layout.erb
[unsafe]
directory=/unsafe
[safe]
<%=@safe_directories%>
otherfield=secure
[header3]
nothing = here
现在从命令行
运行命令puppet apply dir.pp