我开始使用Packer使用chef-solo来提供。我有一个非常简单的配方(default.rb),其中包含以下行:
package "git"
package "ruby"
package "rubygems"
我能够成功地使用Vagrant配置图像。我现在正试图将此配置步骤移至Packer,但是当我执行packer build
时,它似乎没有运行配方。
virtualbox-iso: Running handlers complete
virtualbox-iso: Chef Client finished, 0/0 resources updated in 1.818437359 seconds
我的包装工模板的提供部分是:
{
"type": "chef-solo",
"cookbook_paths": ["/cookbooks"]
}
我对这个问题的第二部分(我假设它会相关)是run_list
配置选项是什么?
答案 0 :(得分:0)
The Packer documentation表示它位于同一个文件中,称为run_list,默认为空。因此,您应该在名为run_list的参数中将您的食谱名称作为单元素字符串数组。
答案 1 :(得分:0)
对于像我这样正在寻找答案的初学者,我通过添加如下的run_list来解决这个问题:
"run_list": ["git::default"]
' GIT中'是metadata.rb文件中的名称,'默认'是文件名或配方(如果我的术语是正确的)。我的食谱目录结构如下:
~/Projects/Packer-Templates/Cookbooks $ find .
.
./ruby-environment
./ruby-environment/metadata.rb
./ruby-environment/recipes
./ruby-environment/recipes/default.rb