通过脚本设置Chef环境属性

时间:2020-02-24 22:44:34

标签: ruby chef-infra chef-recipe

我正在尝试找出从脚本更新环境属性的最佳方法。该脚本将作为对特定环境的自动部署的一部分运行。我的environment.json文件具有如下属性:

"override_attributes": {
    "Work": {
      "BuildPath": "Release/MyLatestRelease01202020.zip",

我试图找出如何在部署脚本中更新BuildPath属性,以便当我从节点运行chef-client时将使用新版本。

也许这不是解决此问题的好方法。我对Chef的来龙去脉并不十分熟悉,因此任何关于更好方法的建议也将是不错的。

到目前为止,我一直在尝试运行ruby脚本,该脚本在环境中搜索节点,然后设置新的构建路径(如下所示)。

search(:node, query) do |n|
   n.default['Work']['BuildPath'] = 'Release/MyLatestRelease01202020.zip'
   n.save
end

但是,这似乎并没有达到我的预期,也不是我想要做的。运行此代码似乎并未真正更新该节点的BuildPath。另外,更新节点属性不是我想要的,因为我知道环境属性仍然会覆盖节点级别属性。

0 个答案:

没有答案
相关问题