我正在尝试将配方添加到现有食谱中(目前版本为0.14.1)。我创建了该文件,增加了食谱版本(0.15.0)并上传到我的厨师服务器。
我已经确认没有任何环境限制会阻止我的节点接收此更新。
环境/ production.rb
name "production"
description "Production environment for servers"
cookbook_versions({
...
"mycookbook" => "~> 0.8",
...
})
并将新配方添加到此节点的运行列表中。
从各方面来说,这应该对我有用。但由于某种原因 - 我的节点不会下载更新版本。当我运行chef-client
当我查看该文件的metadata.json时
/var/chef/cache/cookbook/mycookbook/metadata.json
{
...
"version": "0.14.1",
...
}
它永远不会超过0.14.1版本。
我尝试将cookbook文件夹移开并重新运行chef-client
,它重新下载了所有的食谱,但仍然下载了旧版0.14.1版本的相关食谱
我已经仔细检查了我更新的版本确实存在于主厨服务器上,我甚至尝试在现有版本中显示新的食谱配方,它会返回我期望的内容< / p>
knife cookbook show mycookbook 0.15.0 recipes newrecipe.rb
- 更新 -
我能够在不同的食谱上追踪我的环境文件中的随机约束,这些食谱阻碍了更新版本的下载。一旦我放松了这个版本限制,一切都按预期工作。