【发布时间】:2019-02-05 23:32:19
【问题描述】:
我想从 Jenkins 更新厨师角色属性。
刀命令: 刀角色编辑角色名称
似乎从定义的编辑器打开一个文本文件,可以在其中进行更改然后保存。这似乎不是 Jenkins 的可行解决方案。有没有实现这一目标的选择?
【问题讨论】:
标签: jenkins chef-infra knife
我想从 Jenkins 更新厨师角色属性。
刀命令: 刀角色编辑角色名称
似乎从定义的编辑器打开一个文本文件,可以在其中进行更改然后保存。这似乎不是 Jenkins 的可行解决方案。有没有实现这一目标的选择?
【问题讨论】:
标签: jenkins chef-infra knife
您可以使用“角色食谱”管理您的角色,然后使用 jenkins 中的配方管理角色属性。请参阅this 链接以获取“角色食谱”
【讨论】:
我强烈建议您不要让构建服务器(在您的情况下为 jenkins)将任何更改推送到存储库。存储库是事实的来源,不要让任何自动化破坏\修改它。
据我了解,感觉好像还有其他一些漂亮的解决方案。
请注意,chef-client 支持内联属性 (--json-attributes),您可以利用它来覆盖属性并根据该属性的值在您的食谱中做出决定。
【讨论】:
感谢您的回复。我采用的解决方案是致电
knife role show role-name
保留输出并更新我想使用 jq 修改的属性。然后,使用更新的 json 更新角色
knife role from file FILE
我希望这对将来的其他人有所帮助。
【讨论】: