0

今天我升级了我的厨师独奏安装的 opscode jenkins 食谱。除了 0.8 版的一些更改对我来说效果很好(例如删除 jenkins_data 属性),我注意到某些属性的定义也已更改:从

default['jenkins']['server']['url']  = "http://#{node['jenkins']['server']['host']}:#{node['jenkins']['server']['port']}"

default['jenkins']['server']['url']  = "http://#{default['jenkins']['server']['host']}:#{default['jenkins']['server']['port']}"

所以在新版本中 jenkins.server.url 被定义为DEFAULT jenkins.server.host : 和DEFAULT jenkins.server.port的串联。问题是,当我的角色定义默认/覆盖属性 jenkins.server.port 时,新值会正确反映在属性中,但jenkins.server.url仍然引用原始端口。似乎食谱属性首先被评估,然后可以被角色属性覆盖。根据文章,它将在厨师 10 中像这样工作,但应在厨师 11 中修复。我很确定我正在使用厨师 11 - 当我的 vagrant-chef 运行时,我可以看到:

 INFO: *** Chef 11.4.2 ***

对此有什么帮助吗?

4

1 回答 1

0

该配方正在按预期工作(尽管可以说不应该使用default代替node),因此您必须更改所有使用默认值的属性。

于 2013-10-26T13:36:02.523 回答