我们正在编写一个木偶清单,该清单将在Mac OS X中安装解压缩和其他工具,该木偶清单如下所示。
$packages = ['lsof','unzip','sysstat','telnet', 'git', 'less', 'tree', 'zip']
package {
$packages:
ensure => installed,
provider => 'brew',
}
但是当我运行它时,它给出如下错误,
Error: Failed to apply catalog: Parameter provider failed on Package[lsof]: Invalid package provider 'brew' at /home/rajeevan/appfactory/modules/wso2base/manifests/packages.pp:9
Wrapped exception:
Invalid package provider 'brew'
Wrapped exception:
Invalid package provider 'brew'
然后我们执行命令
brew install unzip
只是为了确保已安装解压缩工具,但事实并非如此。
我已经用谷歌搜索并找到了解决方案
$ brew tap homebrew/dupes
$ brew install unzip
这很好,但就木偶而言,如何在我的木偶清单中做到这一点?
我自己对Google进行的快速Google搜索表明,如果您使用boxen-homebrew模块,则可以编写如下清单:
homebrew::tap { 'homebrew/dupes': }
->
package {
$packages:
ensure => installed,
provider => 'homebrew',
}
否则,您可能会退回到该exec
类型。
exec { 'brew tap homebrew/dupes': ... }
->
package {
...
}
但是由您exec
自己决定是否对进行合适的查询,以确定何时需要运行或是否已经同步。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句