我们升级到了 Puppet 3.7,有些功能停止了工作。我们使用 puppet URL 引用的某些文件无法再被 Puppet Enterprise 找到。最大的变化是我们现在使用目录环境。
当引用模块“files”目录中的文件时,您必须在编写 puppet URL 时删除路径的“/files”部分。例如,在 Docs 中是这个例子:
网址:puppet:///modules/my_module/service.conf
小路:我的模块/文件/service.conf
在形成 Puppet URL 时,是否有一些类似的规则来删除或更改路径的环境名称部分?
答案1
是的 - 例如模板变成:template('modulename/template.erb')
。
目录环境会改变哪些模块是可见的,因此如果您在不可用的模块中查找模板,目录将无法编译。不过,这确实允许您在两个不同的环境中拥有同一模块的两个版本!
另外,请注意您将模块放在哪里 - 我仍然偶尔会收到错误,我忘记将依赖模块从我的“开发”环境移到“生产”环境中!
编辑:重读你的问题,我不确定我是否 100% 回答了它。我认为简短的回答是不就我目前在 Puppet 3 上工作所遇到的情况而言,路径中不再需要环境名称。