LoginSignup
3
4

More than 5 years have passed since last update.

El Captainでknife-soloがインストールできない

Last updated at Posted at 2016-04-26

数年前に knife solo を使っていた環境の再セットアップのために knife を使おうとしたら、Ruby 2.0 が入っている OS X 10.11 El Captain では、そのままでは knife-solo がインストールできなくなっていた。

$ sudo gem install knife-solo --verbose
ERROR:  Error installing chef-zero:
    chef-zero requires Ruby version >= 2.1.0.

chef-zero が Ruby 2.1.0 を要求しています。
OS X 標準以外の Ruby を追加で入れるのは、管理が面倒になるので、
https://rubygems.org/gems/chef-zero で探してちょっと古いバージョンを入れることにします。

$ sudo gem install chef-zero -v 4.5.0 --verbose

https://rubygems.org/gems/chef も同様に少し古いものを選択します。

$ sudo gem install chef -v 12.7.2 --verbose

knife-solo がインストールできました。

$ sudo gem install knife-solo --verbose
(中略)
Successfully installed knife-solo-0.5.1
Parsing documentation for knife-solo-0.5.1
Parsing sources...
100% [50/50]  lib/knife-solo/tools.rb                                           
Installing ri documentation for knife-solo-0.5.1
1 gem installed

これで、うまく動くようになりました。
サーバ側はよろしくやってくれるみたい。


(2017/03/08 追記)

2017 年現在では、fi-yajlrack など他の依存モジュールも、古いものを入れる必要がありそう。

sudo gem install ffi-yajl -v 2.2.3 --verbose
sudo gem install rack -v 1.6.5 --verbose
sudo gem install net-ssh-gateway -v 1.3.0 --verbose
sudo gem install net-ssh -v 2.9.4 --verbose
sudo gem install ohai -v 8.17.1 --verbose
sudo gem install chef-zero -v 4.5.0 --verbose
sudo gem install chef -v 12.7.2 --verbose
sudo gem install knife-solo -v 0.5.1 --verbose --ignore-dependencies

これで、macOS Sierra 10.12.3 でも、Chef: 12.7.2 の knife が使えるようになりました。
しかし、素直に Gemfile を書くか、古い knife を諦めたほうがいい気がする。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4