Chef infra 如何使用chef client运行具有特定版本的烹饪书?

Chef infra 如何使用chef client运行具有特定版本的烹饪书?,chef-infra,chef-solo,Chef Infra,Chef Solo,我在chef服务器上有两本烹饪书,名为mycookbook,版本分别为0.1.0和0.1.1。现在我只想使用chef客户端运行cookbook mycookbook版本0.1.1。如何做到这一点?通过一些尝试找到了答案 执行以下命令 chef-client -o "recipe[mycookbook@0.1.1]" 这将调用MyOkBook版本0.1.1 注意:使用-o参数运行chef client将永久覆盖该节点的运行列表。该命令将用新的运行列表替换您的运行列表,并仅使用

我在chef服务器上有两本烹饪书,名为mycookbook,版本分别为0.1.0和0.1.1。现在我只想使用chef客户端运行cookbook mycookbook版本0.1.1。如何做到这一点?

通过一些尝试找到了答案

执行以下命令

chef-client -o "recipe[mycookbook@0.1.1]"
这将调用MyOkBook版本0.1.1


注意:使用-o参数运行chef client将永久覆盖该节点的运行列表。

该命令将用新的运行列表替换您的运行列表,并仅使用该一本cookbook。要对所有运行使用某个版本,您可以在环境中指定cookbook的确切版本,并将该环境分配给您的节点。@rastasheep是的,我想从运行列表中运行特定的cookbook,这就是我的要求。我也知道环境配置和cookbook版本分配,但不是该场景的解决方案(我没有在chef server中创建新环境的权限)。