端くれプログラマの備忘録 インフラ [インフラ] Serverspecでできること

[インフラ] Serverspecでできること

昨日ざっくり試してみたServerspecだけど、具体的にどんなテストが出来るのだろうか。

Serverspecのテストファイルは以下の形式で記述する。

require 'spec_helper'

describe '<リソースタイプ>(<テスト対象>)' do
  <テスト条件>
end

リソースタイプとテスト条件については、以下の公式ページにまとめられている。

Serverspec – Resource Types
https://serverspec.org/resource_types.html#php_config

自分が使いそうなリソースタイプを抜粋してみると以下。

  • command
  • cron
  • file
  • host
  • mail_alias
  • package
  • php_config
  • process
  • port
  • selinux
  • selinux_module
  • service
  • user

コマンドの実行結果をチェックしたり、ファイルやディレクトリの存在や属性もチェックできるので、システム設定に限らず、アプリケーションの動作確認をするのにも役立ちそう。