アァーハッハッハッハ!!イィーヒッヒッヒッヒ!!
あっ!?どうもガシMAXです。

なぜガシMAXはこんなにも喜んでいるのか?宝くじでも当たったのか?
否っ!!改善されたのです。Chefのバグが。

前回の番外編#2でWorkstation用のサーバを構築しましたが、
Chefのバグにより、knife-soloプラグインの初期設定がうまく
いきませんでした。
あれから約3週間程でしょうか。そろそろかなぁとは思ってましたが、
再度インストールを試みるとエラーが出ないではありませんか。
ようやく進むことが出来たので、その模様をどうぞ。

前回は最新のChefをインストールすると、knife-soloプラグインの
初期設定がうまくいかないという不具合が発覚したので、一旦chefと
knife-soloをアンインストールし、古いバージョンのchefをインストール、
knife-soloも再インストールしました。

# gem uninstall chef
# gem uninstall knife-solo
# curl -L https://www.opscode.com/chef/install.sh | bash -s -- -v 11.10.4-1
# gem install knife-solo
Fetching: chef-11.12.2.gem (100%)
Successfully installed chef-11.12.2
Fetching: knife-solo-0.4.1.gem (100%)
Thanks for installing knife-solo!
(略)

古いバージョンのChefをインストールしたところまではよかったのですが、
knife-soloをインストールするタイミングでChefのバージョンが最新版(バグ込み)
になってしまうという。。。
案の定、knife-soloの初期設定をやってもエラーが出てしまいます。

# knife configure
WARNING: No knife configuration file found
Where should I put the config file? [/root/.chef/knife.rb]
ERROR: Ohai::Exceptions::DependencyNotFound: Can not find a plugin for dependency os

このように。

しかしです。本日同じように最新版のCehfとknife-soloをインストールし、
初期設定を行いました。

# curl -L https://www.opscode.com/chef/install.sh | bash
(略)
Preparing... ########################################### [100%]
1:chef ########################################### [100%]
Thank you for installing Chef!
# gem install knife-solo
(略)
Installing ri documentation for chef-11.12.4
Parsing documentation for knife-solo-0.4.1
Installing ri documentation for knife-solo-0.4.1
3 gems installed

どうやら2014/5/8時点では最新版のChefとして11.12.4-1がインストールされるようです。
そしていよいよです。knife-soloの初期設定です。

# knife configure
(略)
*****
Configuration file written to /root/.chef/knife.rb

キタ―――(゚∀゚)―――― !! ノーエラーです!!
どうやらバグは改修されたようです。

それでは前回できなかった残りの部分をちょちょっと進めましょう。

次はリポジトリの作成です。
ワーク用のディレクトリを作成して、そこにリポジトリ(test-repo)を作成します。

# mkdir /var/tmp/chef_test
# cd /var/tmp/chef_test
# knife solo init test-repo
Creating kitchen...
Creating knife.rb in kitchen...
Creating cupboards...
Setting up Librarian…

リポジトリの作成OKです。次はクックブック(hello)を作成します。

# knife cookbook create hello -o site-cookbooks/
** Creating cookbook hello
** Creating README for cookbook: hello
** Creating CHANGELOG for cookbook: hello
** Creating metadata for cookbook: hello

問題なさそうです。確認しましょう。

# cd /var/tmp/chef_test/test-repo/site-cookbooks/hello/recipes
# ls
default.rb
# cat default.rb
(略)

レシピのひな形も作成されてます。
これでWorkstationとしての設定は完了といっていいでしょう。

ということで今回はここまで。
前回はChef自体にバグが含まれていたので、結構苦戦しましたが、
バグさえ解消されれば、なんて事ぁないですな。よかったよかった。

でわ。