如何使用knife deps查询特定版本Cookbook的依赖?
查询特定版本Cookbook依赖的knife deps用法
我之前也踩过这个坑,折腾了好一阵才搞清楚knife deps查询特定版本Cookbook依赖的正确打开方式。你之前尝试的各种分隔符或者单独传版本参数的思路不对,关键是要遵循Chef Server上Cookbook的资源路径格式来指定目标Cookbook。
具体步骤:
先确认目标Cookbook的版本
用你提到的命令先列出服务器上所有Cookbook的版本:knife cookbook list -a比如输出里会有类似
nginx 1.2.3 1.4.0这样的条目,找到你要查询的版本号。用正确的格式执行knife deps命令
查询特定版本Cookbook依赖的命令格式是:knife deps --remote cookbooks/[cookbook-name]@[version]举个实际例子,如果要查
nginxCookbook的1.2.3版本依赖,命令就是:knife deps --remote cookbooks/nginx@1.2.3多组织场景的补充
如果你的Chef Server有多个组织,需要在路径前加上组织名:knife deps --remote [org-name]/cookbooks/nginx@1.2.3
额外验证小技巧
如果担心命令执行有问题,可以先验证该版本的Cookbook确实存在于服务器上:
knife cookbook show nginx 1.2.3
如果能正常返回Cookbook的元数据,说明版本没问题,再跑knife deps命令就不会出错了。
内容的提问来源于stack exchange,提问作者Kevin Buchs
相关产品推荐
相关产品推荐

