Go ahead!

Memoization for Everything

Serverspec本

| Comments

著者のmizzyさんから頂きました.ありがとうございます!

"Serverspec book cover"

Serverspecそのものの説明はいらないとは思いますが,公式サイトと書籍へのリンクを張っておきます.

本の感想

ソフトウェアの書籍でよくあるような「Serverspecはこう使う」といよりも「Serverspecはなぜこうなっているのか?」という所に重みを置いている書籍です.D言語のTDPLもそうですが,メイン開発者だからこそ書ける書籍になっています. もちろん,Serverspecの説明のために使い方や機能の説明もありますが,個人的には1章と4章がこの本の肝だろうと勝手に思っています.

1章

Serverspecの誕生から,どういう時に使うのか,また今どういう哲学でmizzyさんがServerspecを開発しているかについて書かれています.この章は,Serverspecというよりも,ソフトウェア開発に関する考えとして読むのも面白いと思います.

4章

Serverspec・Specinfraの内部的な構造から設計指針まで広く深く書かれている章です.もし今後Serverspecをがっつり使いたい・またパッチを投げたい,と思っている人は読むべきでしょう.この章のいくつかは,英語でどこかで公開した方がいいんじゃないかと思うくらいです(PRのレビューの負荷が下がりそう).

実装寄りの章ですが,ソースコードもふんだんに出てくるので,理解はしやすいと思います.

Serverspecを使っている所

個人的に,Treasure Agent(td-agent)のインストール後の状態テストにServerspecを使っています.ミドルウェアのパッケージは構成が変わると,運用している人のスクリプトが動かなくなったりするので,そこを動くコードでチェック出来るようにServerspecで書きました.

この時には汎用的なパッケージの構成テストにServerspecを使っている例がなかったのか,OSなどの判定をする機能がありませんでした.その影響でテスト出来ない箇所がありましたが,「ohaiみたいなのがあるとこうやってテスト書ける〜」みたいな要望を出したら,次の日にはServerspec(実際はSpecinfra)に入ってました! この機能に関しては,3章の3.8のセクションに書かれてます.

まとめ

Serverspecの作者が著者ということもあり,付録含めて200ページの中に様々な情報がちりばめられています.Serverspec使ってみようかな,と思っている方は買って損はないと思いますし,各リソースタイプも付録に列挙されているので,簡単なリファレンスとしても使える感じです.

mizzyさん,執筆お疲れ様でした and ありがとうございました!

Comments