ページ ツリー
メタデータの末尾にスキップ
メタデータの先頭に移動

このページの古いバージョンを表示しています。現在のバージョンを表示します。

現在のバージョンとの相違点 ページ履歴を表示

« 前のバージョン バージョン 6 次のバージョン »

Jenkins の Cookbook をつくる 

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


Jenkins とは

継続的インテグレーションツールです。
http://jenkins-ci.org/

もともとは Java や C などの一般的なプロジェクト(ソースコード)を対象にしたツールでしたが、
最近では KitchenServerspec といった技術が出てきていて、Jenkins と組み合わせた「インフラCI」や「テスト駆動インフラ」が盛り上がってきています。

Chef を使っている方であれば、知っておいて損はないと思います。

 

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

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

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

    $ wget http://pkg.jenkins-ci.org/redhat/jenkins-1.568-1.1.noarch.rpm
  2. ダウンロードした rpm を yum コマンドでインストール

    $ yum localinstall jenkins-1.566-1.1.noarch.rpm
  3. /etc/sysconfig/jenkins を編集して、実行ユーザーを変更

    $ sed -i 's/^JENKINS_USER="jenkins"/JENKINS_USER="kitchen"/' /etc/sysconfig/jenkins
  4. 利用するディレクトリのオーナーを変更

    $ chown -R kitchen:kitchen /var/lib/jenkins
    $ chown -R kitchen:kitchen /var/log/jenkins
    $ chown -R kitchen:kitchen /var/cache/jenkins
  5. サービスを登録・起動

    $ service jenkins start
    $ chkconfig jenkins on

 

ヒント: 主な 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 ]


 

  • ラベルがありません