さくらVPS上でGithubに入れたnode.jsプロジェクトをJenkins経由でテストする
入ってなければ入れる。
$ yum install -y java-1.6.0-openjdk java-1.6.0-openjdk-devel
Jenkinsを入れて、サービスとして動作させる。
$ wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
$ rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
$ yum install -y jenkins
$ service jenkins start
$ chkconfig jenkins on
node環境の手順をやればいいんだけど、jenkinsユーザはログイン出来ないユーザになっているので、そのままだとインストール出来ない。
まずはjenkinsユーザをログイン出来るようにする。
$ vi /etc/passwd
以下のように書き換える。
jenkins:x:497:496:Jenkins Continuous Build server:/var/lib/jenkins:/sbin/nologin
↓
jenkins:x:497:496:Jenkins Continuous Build server:/var/lib/jenkins:/bin/bash
これでjenkinsユーザでログインして、nodebrewのインストールをやればOK
さすがにみんな使えるのはどうかと思うので、ユーザ権限を作る。
- Jenkinsの管理→グローバルセキュリティの設定を開く
- アクセス制御でJenkinsのユーザデータベースを選択。ユーザにサインアップを許可チェックボックスを外す。
- ユーザ作成を行う。
- 作成したユーザでログインする。
- もう一回グローバルセキュリティの設定を開いて、権限管理で行列による権限設定を選択する。
- 作ったユーザを追加して、全権限を付与。匿名ユーザからは権限を外す。
適当にGithubプラグインとかGitプラグインとか入れる。
- リポジトリにGithubのgitリポジトリを設定する。
フックさせる方法もあるっぽいけど後で調べる。 - ビルドでシェルの実行を選択
設定は以下の感じ。
export PATH=$HOME/.nodebrew/current/bin:$PATH
nodebrew use v0.8.17
npm install -d
npm test
PATHとかは環境変数で定義しておいたほうがいいかも。
後は適当にジョブの設定を行えばOK