LoginSignup
11
9

More than 5 years have passed since last update.

Vagrant の仮想マシンに CentOS6 入れて jenkins 導入

Last updated at Posted at 2013-06-13

vagrant の CentOS6 環境にJenkinsを入れた記録

インストール

jenkins の前に javaが必要なのでインストール

$ sudo yum install java-1.7.0-openjdk.x86_64

# インストールの確認
$ java -version
java version "1.7.0_19"
OpenJDK Runtime Environment (rhel-2.3.9.1.el6_4-x86_64)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

jenkins公式ページにあるインストール方法に従ってインストール

$ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
$ sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
$ sudo yum install jenkins

/etc/init.d/jenkins にデーモンとして起動するスクリプトが
/usr/lib/jenkins/jenkins.war にjenkinsの本体がインストールされている

起動してみる

以下のコマンドで起動

$ java -jar /usr/lib/jenkins/jenkins.war

8080ポートで Jenkins が起動する。
まだ port fowarding の設定してないので、ゲストOSのコンソールでcurl で確認

 $ curl http://localhost:8080/

ゲストOSのポートフォワーディングの設定

Vagrantfile を開いて以下のように記述

config.vm.network :forwarded_port, guest: 8080, host: 18080

ゲストOS再起動

vagrant reload

ブラウザで localhost:18080 にアクセスして jenkins の画面が表示されることを確認。

rubyプロジェクトのビルド設定

RVM インストール

$ \curl -L https://get.rvm.io | bash

jenkins ダウングレード

現時点の最新 jenkins-1.518-1.1 で RVM プラグイン入れると以下のようなエラー吐いていたので jenkins をダウングレードする

java.lang.IncompatibleClassChangeError: Found class com.kenai.jffi.InvocationBuffer, but interface was expected
$ yum downgrade jenkins

これで jenkins-1.517-1.1 になった

Jenkins に RVMプラグイン導入

Jenkinsの管理画面から RVM plugin をインストール

サンプルRubyプロジェクトで動作を確認

サンプル的な ruby のプロジェクトを使ってビルドしてみる。

新規ジョブ作成

フリースタイル・プロジェクトのビルド を選択

ソースコード管理で Subversion を選択し、リポジトリのURL に https://svn.jenkins-ci.org/trunk/jenkins/test-projects/model-ruby-project を入力。

ビルドトリガーで、SCMをポーリング を選択して、

スケジュールに

*/10 * * * *

と入力

ビルド環境では Run the build in a RVM-managed environment を選択して、 Implementation に以下のように入力

1.9.3

これで RVM 使って 1.9.3 環境でのテストが実行されるようになる。

実際のビルド方法(テスト実行方法)は、ビルドのシェルの実行に以下のように入力

which bundle || gem install bundler
bundle install
bundle exec rake

ビルド後の処理に、JUnit テスト結果の通知を追加、テスト結果XML には以下のように入力

reports/**/*.xml

トラブルシュート

ビルドの中の bundle install で以下のようなエラー

エラー: /home/vagrant/.rvm/archives/RPM-GPG-KEY-EPEL-6: インポート読み込みに失敗しました(2)。
エラー: /home/vagrant/.rvm/archives/epel-release-6-8.noarch.rpm のオープンに失敗: そのようなファイルやディレクトリはありません
Error installing EPEL, it is required for libyaml-devel,
either there was an error installing EPEL package,
or there was problem checking if libyaml-devel is available / installed.
Using /home/vagrant/.rvm/gems/ruby-1.9.3-p429

CentOS において Ruby 1.9.3 をインストール際に発生する問題っぽい。(http://d.hatena.ne.jp/koziy/20111104/1320370451)

EPEL を利用して、 yaml-devel をインストールすれば良いらしい。

EPEL 導入

参考: http://www.tooyama.org/yum-addrepo-epel.html

$ sudo wget http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ sudo rpm -ivh epel-release-6-8.noarch.rpm

yaml-devel インストール

$ sudo yum install libyaml-devel.x86_64

これで、 rvm install 1.9.3 してみて正常であればOK

11
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
9