「chefむずぽよ〜〜〜><」と嘆いていた僕ですが、Itamaeを紹介してもらったので使ってみたお話。
前提:Itamae
- ryotarai/itamae https://github.com/ryotarai/itamae
軽量chefです。今、熱いらしいです。詳しいことはREADMEに載ってるプレゼンの資料がわかりやすいですね。
rbenvをインストールするプラグインをつくった
練習として先週の土日にrbenv + ruby_buildのレシピをベタベタ書いてました。ベタベタすぎる。(今気づいたけど、このGistシークレットになってるじゃん……)
で、Itamaeは↑みたいなベタ書きのrecipeを渡すことはもちろん、recipeをGem化してプラグインにすることもできます。chefで言うBerkshelf的な感じ。確かにGemのほうが普段から使い慣れてるしいいですよね。
というわけで、今日はrbenvをインストールするプラグインをつくってみました。
- rutan/itamae-plugin-recipe-rtn_rbenv https://github.com/rutan/itamae-plugin-recipe-rtn_rbenv
基本的な中身は↑のベタ書きrecipeと一緒です。GitHub Wikiのマニュアルを読んで、省略できる部分は省略したりしてます。あとユーザインストールとシステムインストールでファイル分けたです(書いてる最中によくわからなくなったので)
そして、はじめてのServerspecでした。cookbook書いてるときもやろうかな…とは思ってたんですが、そこまで手が回ってなかったので勉強がてら挑戦です。
Serverspecの記事も結構あるんですけど、なんか読んでてもいまいちよくわかってないんですよね……僕のインフラ絡みの知識がやっぱり雑魚なので、用語を調べていくだけでいっぱいいっぱいになってる感ある。とっくに世間はクラウド全盛時代なわけだし、この辺りは追っついていかないとなー。
なのでServerspecはもうちょっと理解したら記事書くかもです。緑のアイコンでもわかるServersoecだ〜〜(願望)
今後の課題
- Definitionsの使い方ちゃんと調べる
- テケトーに書いたらエラーしてしまったので、なんか勘違いをしているのかもしれない。中身読んでみようかな。。。
- serverspec、もっとちゃんと調べる
- どっから手出すのがいいんだい?
- どういうテストを書くべきなんだい?
今日も一日がんばるぞい!
※Ubuntuで動かないのは気づいてます。近いうちに。。。 なおしたよ!