我正在尝试使用 puppet 来编辑 jenkins config.xml。由于各种原因,我认为 augeas 最有意义,而且我几乎拥有我需要的东西,但格式非常粗糙。
这是我的木偶文件:
augeas { 'jenkins_config.xml' :
incl => '/tmp/config.xml',
lens => 'Xml.lns',
context => '/files/tmp/config.xml/hudson',
changes => [
"set securityRealm/#attribute/class hudson.security.PAMSecurityRealm",
"set securityRealm/#attribute/plugin pam-auth@1.0",
"set securityRealm/serviceName/#text sshd",
],
}
我在找什么:
<hudson>
<securityRealm class="hudson.security.PAMSecurityRealm" plugin="pam-auth@1.0">
<serviceName>sshd</serviceName>
</securityRealm>
</hudson>
我得到了什么:
<hudson>
<securityRealm class="hudson.security.PAMSecurityRealm" plugin="pam-auth@1.0"><serviceName>sshd</serviceName>
</securityRealm>
</hudson>
内容很好(顺便说一句,这太棒了),但阅读起来并不有趣。augeas 可以为我处理缩进和换行吗?如果我必须自己做,任何人都可以提供关于缩进的提示吗?我的尝试都失败了。