Serverspec

specファイルをとりあえず作る [#vb05a355]

 # cd /usr/share/serverspec   <--インストールしたパスへ移動
 # bundle exec serverspec-init
 Select OS type:
 
  1) UN*X
  2) Windows
 
 Select number: 1
 
 Select a backend type:
 
  1) SSH
  2) Exec (local)
 
 Select number: 1
 
 Vagrant instance y/n: n
 Input target host name: 192.168.33.10
 + spec/
 + spec/centos62.local/
 + spec/centos62.local/sample_spec.rb
 + spec/spec_helper.rb
 + Rakefile

serverspecを実行するユーザーの

/.ssh/configに接続先の接続情報を記載する [#ua8e42a6] rootなら/root/.ssh/config

 # cd /root/.ssh
 # vim config
 --- 
 Host 192.168.33.11
     HostName 192.168.33.10
     Port 22
     User vagrant
     IdentityFile   
/.ssh/id_rsa
 ---

serverspecの実行 [#h14b41fe]

 # cd /usr/share/serverspec
 # ASK_SUDO_PASSWORD=1 rake
 Enter sudo password:
 vagrant@192.168.33.10's password:
 
 Package "httpd"
  should be installed
 
 Service "httpd"
  should be enabled
  should be running
 
 Port "80"
  should be listening
 
 Port "22"
  should be listening
 
 Finished in 0.13984 seconds (files took 6.17 seconds to load)
 5 examples, 0 failures

特定のホストにだけ実行する [#q49e913a]

 # vim   
/.ssh/config
 Serverspecを実行するサーバー側のユーザー(rootとか)の  
/.ssh/configに接続情報を記載する。
 ---
 Host 192.168.33.11
     HostName 192.168.33.11
     Port 22
     User vagrant
     IdentityFile   
/.ssh/id_rsa
 ---
 # rake spec:192.168.33.11   <--spec:の後にIPアドレスを記載することで対象ホストだけ実行する

SUDOまたはSUを使う場合は下記変数を指定 [#f5c5c2f2]

 ASK_SUDO_PASSWORD=1