Fork me on GitHub

役立ちぬ開発史、それはただのブログ

覚えておくといい、ブログの時代は終わる。いつかその内、きっとたぶん…

Chef-DKのインストール:Chef-DKが反映されない場合の対処

| Comments

昨年、少しだけChefを触っていたのですが、修論などで時間が無くなり、気づいたら、時代に置いてかれてしまいました。Chef社が、そんな人を少しでも救おうと手を差し伸べてたもの、それがChef-DKです。(違う!)

Chef-DKとは

Chaf社が出している、Berkshelf,Test Kitchen,Foodcritic,ChefSpec,Chef Client,Knife,Ohai,Chef Zeroなどをパッケージしたものです。特に新しいものがあるわけではないのですが、コレら全部が1つのパッケージに入っているので、いちいちダウンロード・インストールして、設定してをせずに済むので、すごく便利です。ChefとBerkshelfを一から設定しようとすると、とても面倒くさいので、ここだけでもパッケージ化されていることに魅力を感じます。

インストール方法

Chef-DKのダウンロードページから落としてきたものを、解凍します。その中にあるインストールソフトを実行すれば、後は指示に従って、インストールすればいいです。

Chef-DKをインストールしたときに詰まったこと

 何故か、Chef-DKをインストールしても、なかなか反映されていませんでした。何度か再インストールしても効果がありません。「なんでじゃ〜」っと、一人わめいていました。色々と調べてみると、どうやら.rbenv/shimsにChefが残っていたことが影響してました。rbenvでChefを入れていると、PAHTの指定で先に読まれてしまっているみたいです。前回の記事で入れたものに、足を引っ張られていました。
 PATHの設定で、usr/binを先に書けばいいらしいのですが、根本的な解決にはなっていないだろうということで、

1
2
3
rm -rf .rbenv
rm -rf /usr/local/bin/rbenv
rm -rf /usr/local/Cellar/rbenv

  これらのコマンドを実行して、.rbenvを削除し、Chef-DKを再インストールしました。その後に、rbenvを再インストールしました。なので、Rubyをrbenvで管理していた人は、もう一度入れ直しをしましょう。ちなみに、Rubyをもう一度インストールするのには、結構時間がかかりました。仕方のない事です。

rbenvを設定し直したら、以下のコマンドをターミナルで打ち込みましょう。

1
which knife

次のように返ってきたら、

1
/usr/bin/knife

ちゃんとChef-DKが設定されています。

knife-soloを導入

Chef-DKにはknife-soloが入っていないので、インストールした後に、以下のコマンドを打ち込み、導入しましょう。

1
chef gem install knife-solo

これでChef-DKの準備は完了です。
素敵なクックライフを送りましょう!

参考サイト

cookbook開発環境をchef dkで作成する
Git で入れてしまった rbenv を削除して Homebrew で入れなおした時のメモ
簡単!MacOSXやLinuxにChef,Knife,Berkshelfを一発でインストールしてくれるChefDKの紹介

Comments