ページ ツリー

比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

...

コード ブロック
title./resource/default.rb
file “/etc/profile.d/application.sh” do
  content “export PATH=$PATH:/opt/application/bin”
  action :create_if_missing
end

 

お題: Jenkins の Cookbook をつくる 

では、ここまでの話を踏まえて、実際に Cookbook を作ってみてください。
作成するのは Jenkins をインストールする Cookbook です。 

Jenkins とは

 

手動でインストールするときの手順

 

  1. http://pkg.jenkins-ci.org/redhat/ から rpm をダウンロード

  2. ダウンロードした rpm を yum コマンドでインストール

  3. /etc/sysconfig/jenkins を編集して、実行ユーザーを変更

  4. 利用するディレクトリのオーナーを変更

  5. サービスを登録・起動

 

ヒント: 主な Resource

コマンドを実行する 

execute Resource [ http://docs.opscode.com/resource_execute.html ]

ファイルをダウンロードする

remote_file Resource [ http://docs.opscode.com/resource_remote_file.html ]
※ ダウンロードしたファイルなどは /tmp ではなく Chef::Config[:file_cache_path] に保存する

パッケージをインストールする 

package Resource [ http://docs.opscode.com/resource_package.html ] 

テキストファイルの内容を置換する 

ruby_block Resource [ http://docs.opscode.com/resource_ruby_block.html ]
Chef::Util::FIleEdit [ http://rubydoc.info/gems/chef/Chef/Util/FileEdit ]
※ execute Resource で sed コマンドを実行してもよい
※ file Resource + lazy でもできるかな?

ファイルやディレクトリのオーナーを変更する

ruby_block Resource [ http://docs.opscode.com/resource_ruby_block.html ]
FileUtils#chown_R [ http://docs.ruby-lang.org/ja/1.9.3/method/FileUtils/m/chown_R.html ]
※ execute Resource で chown コマンドを実行してもよい 

サービスを起動する / 自動的に起動するように登録する

service Resource [ http://docs.opscode.com/resource_service.html ]