使用puppet-xmlfile模块时,Puppet v4在文件类型上丢失了内置'ensure'参数

时间:2016-03-31 11:00:40

标签: ruby windows puppet

在puppetserver版本上使用puppet-xmlfile模块时:2.2.1与带有Puppet 4.3.2的Windows 2012 R2节点在尝试执行木偶运行时收到以下错误:

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: no parameter named 'ensure' at 
/etc/puppetlabs/code/environments/my_environment/manifests/default.pp:12 
on File[C:/tmp/] at /etc/puppetlabs/code/environments/my_environment/manifests/default.pp:12 on node xxx

然而,在重新启动puppetserver后,它在第一次运行时成功运行。每次后续运行都会失败。

木偶清单:

 $staging_windir = 'C:/tmp/'
 file { $staging_windir:
    ensure => directory,
 }

 xmlfile { "C:/Path To Existing XML File/config.xml":
    ensure            => present,
    use_existing_file => true,
 }

 xmlfile_modification { "test" :
    file       => "C:/Path To Existing XML File/config.xml",
    changes  => 'set /Someconfig/State "Enabled"',
 }

使用此repo中的puppet-xmlfile模块的分支“fix_relative_require”:https://github.com/capablue/puppet-xmlfile/tree/fix_relative_require

上面的代码足以重新创建它,它会产生此问题顶部列出的错误。

我看不出为什么内置的Puppet文件类型突然失去它的ensure参数的原因。当我从清单中删除xmlfile类型时,File ['C:/ tmp /']再次正常工作。任何想法都非常赞赏。

0 个答案:

没有答案