2015年1月17日にオライリー・ジャパンから出版のServerspecが発売されます。

著者のmizzyこと宮下剛輔さんによる紹介記事はこちら。

『Serverspec』正誤表(公式サイト版)はこちら

さてこの本、幸いなことに執筆時にレビュワーに誘っていただきました。
レビューでは思想や解説の内容を中心に、言いたいことが伝わるだろうかという見方でIssueを切りました。

微力ながら制作のお手伝いをした書籍をご恵贈いただき、手元に来た現物をみてニヤニヤしています。

Serverspec the definitive guide
Serverspec the definitive guide

※ iPhone5Cは大きさ比較用。

扱いやすいサイズで持ち運びやすいですね。電子版も出るので、そちらは購入する予定です。

では折角なのでおすすめの章を2つ。

使う人向けの3章

簡素な公式ドキュメントの行間を解説してくれる3章は、テストコードをどう書けばよいのかから始まり、コードの使いまわしや環境およびセキュリティ要件へ対応するTipsが書かれています。
また、良くある悩みの『何をどこまでテストすればいいのか?』に対する指標が書いてあります。

Serverspecを使うことに関しては、3章を読めばしばらく困らないでしょう。

3章 Serverspecの本格利用
    3.1 RSpec
    3.2 リソースとリソースタイプ
    3.3 SSH経由でのリモートホストのテスト
    3.4 テスト対象ホストの追加
    3.5 動作のカスタマイズ
    3.6 一時的な動作の変更
    3.7 specファイルを複数のホストで共有
    3.8 ホスト固有情報の利用
    3.9 任意コマンドの実行
    3.10 並列実行
    3.11 様々なバックエンド
    3.12 テストコードの指針
    3.13 本章のまとめ
※ O'Reilly Japan - Serverspec http://www.oreilly.co.jp/books/9784873117096/ より

カスタマイズ・コントリビュートの4章

4章はServerspec, SpecInfraの内部を解説してくれます。
特にSpecInfraは公式なドキュメントと言えるものがありませんが、4章の内容を理解すれば、Github上のコードをそのままドキュメントとして読めば大丈夫なくらいにはなります。 もちろんSpecを記述する際にも役立つ知識です。

また、それぞれのカスタマイズや拡張についての丁寧なウォークスルー、さらにはmizzyさんがプルリクをもらうとき(特に個人的に)気になることまで書かれています。

Serverspecを使い倒す、貢献する(オプション)なら4章で手を動かすといいですね。

4章 Serverspec内部の詳細
    4.1 Serverspecのアーキテクチャ
    4.2 Serverspecの処理の流れ
    4.3 コマンドクラス
    4.4 バックエンドクラス
    4.5 Serverspecのリソースタイプ拡張
    4.6 Specinfraの OSに関する処理
    4.7 Pryによる内部解析
    4.8 Serverspec自身のテスト
    4.9 コントリビュートの際の心構え
    4.10 本章のまとめ
※ O'Reilly Japan - Serverspec http://www.oreilly.co.jp/books/9784873117096/ より

その他

Serverspecはmizzyさんの活動テーマの1つ、継続的な改善の副産物だと思います。 中でもなぜServerspecが広まったのかは、伊藤直也(naoya)さんのまえがきに推察があります。

本エントリで紹介しなかった章には、mizzyさん曰く『思いを綴ったエッセイ』が多く含まれます。
Serverspecの活用法を把握(おそらく書籍を入手する当初の目的を達成)したら、これらのエッセイを読み返してみることをおすすめします。
この本の読者が触発され、何かしらの常識や慣習を改善する新しいツールを出してくると嬉しい。。?かもしれない。

最後に、mizzyさん無事出版おつかれさまです。

Network
Network