当我尝试在Windows代理中应用清单时,我收到了上述错误。同样的清单在linux代理中运行良好。清单有一个文件,它接受凭据并从文件服务器(传递凭据)安装资源,然后安装一个软件包,安装的路径作为源。可能是错误?任何帮助将不胜感激!
答案 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。
这应该让你开始。如果仍然不清楚,你可以提供一些更多细节,我会把资源写出来。不要忘记让包资源需要检索包文件的资源!