错误:无法应用目录:未定义的方法`祖先'为零:NilClass

时间:2016-05-19 06:26:45

标签: linux windows puppet manifest credentials

当我尝试在Windows代理中应用清单时,我收到了上述错误。同样的清单在linux代理中运行良好。清单有一个文件,它接受凭据并从文件服务器(传递凭据)安装资源,然后安装一个软件包,安装的路径作为源。可能是错误?任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

Windows不支持挂载类型,因此它可以在Linux上运行,但不适用于Windows。

注意:https://github.com/puppetlabs/puppet/blob/master/spec/unit/type/mount_spec.rb#L4

您的具体错误很可能来自:https://github.com/puppetlabs/puppet/blob/master/lib/puppet/type/mount.rb#L233 在这种情况下,default provider几乎肯定是nil:NilClass

更新

因此,要在Windows上执行此操作,您需要使用具有http源属性的文件资源:https://docs.puppet.com/puppet/latest/reference/type.html#file-attribute-source。如果你不能在文件服务器上使用apache或nginx,那么你需要做一个exec资源来检索文件。

然后,您可能希望使用包资源,其中source属性指向下载包的任何位置:https://docs.puppet.com/puppet/latest/reference/type.html#package-attribute-source

这应该让你开始。如果仍然不清楚,你可以提供一些更多细节,我会把资源写出来。不要忘记让包资源需要检索包文件的资源!