2014-10-06 88 views
0

我有厨师客户端v11.12.2。我通过Gemfile安装了刀块和刀子操场插件,并且看到它们已经安装。厨师刀插件未被识别?

> bundle install 
..... 
Using knife-block (0.1.1) 
Using knife-playground (0.2.2) 
Using knife-spork (1.3.4) 
...... 

> bundle show knife-block 
/opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/knife-block-0.1.1 

但是,当我做一个刀块列表,例如,我得到这个。对刀pg命令也是同样的问题。我还有什么遗漏?

> knife block list 
FATAL: Cannot find sub command for: 'block list' 
+0

你试过了吗?捆绑exec刀块列表? – 2014-10-06 19:31:20

+0

是的,这是承认命令,但为什么我必须这样做?为什么不“刀块列表”只是工作? – 2014-10-06 20:10:41

+0

正如Coderanger解释的那样,你的'bundle install'创建了一个刀形二进制文件,它不是简单调用刀片所使用的二进制文件。这是使用捆绑器的本质。 – 2014-10-06 23:45:33

回答

0

您正在使用由厨师服务器安装bundle命令,但可能使用从安装厨师客户端或chefdk的knife。简单的解决方法是将chef也添加到Gemfile中(如果它尚未作为依赖项被引入),然后bundle exec knife ...

+0

是的,这可能是发生了什么事。我没有配置这个盒子,但是物理盒子托管了厨师服务器和厨师客户端,所以安装它们的人就完全发布了你发布的东西。 – 2014-10-06 20:21:52