ServerspecのサンプルをCentOS 6.5環境で実行するまで

高瀬 裕介 1,329views 更新:2014年12月11日


yum install ruby rubygems
gem install serverspec
gem install rake


mkdir /opt/serverspec/
cd /opt/serverspec/

# 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:
 + spec/
 + spec/
 + spec/
 + spec/spec_helper.rb
 + Rakefile
 + .rspec


mkdir -p /opt/hosts/
# /opt/hosts/ に秘密鍵を設置
chmod -R 0600 /opt/hosts/

ssh -v -i /opt/hosts/


vim ~/.ssh/config

  Port 22
  User serverspec
  IdentityFile /opt/hosts/



vim /opt/serverspec/spec/spec_helper.rb
# オプション追加
set :request_pty, true

vim /opt/serverspec/spec/
# ファイルの一番上に追記
require 'rubygems'

■接続先サーバーでチェック用ユーザーがsudo出来るように準備 【重要】visudoの設定は必ず最後に戻しておくこと!!

useradd serverspec
# visudo
serverspec   ALL=(ALL) NOPASSWD:     ALL

su - serverspec
mkdir ~/.ssh
vi ~/.ssh/autorized_keys
# 公開鍵追加

chmod 0700 ~/.ssh
chmod 0600 ~/.ssh/autorized_keys


cd /opt/serverspec
rake spec


/usr/bin/ruby -I/usr/lib/ruby/gems/1.8/gems/rspec-support-3.1.2/lib:/usr/lib/ruby/gems/1.8/gems/rspec-core-3.1.7/lib /usr/lib/ruby/gems/1.8/gems/rspec-core-3.1.7/exe/rspec --pattern spec/\*_spec.rb

Package "httpd"
  should be installed

Service "httpd"
  should be enabled
  should be running

Port "80"
  should be listening

Finished in 0.1808 seconds (files took 0.74127 seconds to load)
4 examples, 0 failures

ログイン / 新規登録してコメントする