UbuntuでJenkinsを動かしてnpmモジュールをCIする

Jenkinsを使う必要が出てきたのでちょっと使ってみました。なんか世間から遅れてる感じだけども。
環境:Ubuntu 12.04 LTS Server

Jenkinsのインストール

$ sudo apt-get install jenkins

これだけ。jenkins-tomcatってパッケージもあったりした。
あと初めて知ったけど、JenkinsってOracleJDKでなくてOpenJDKを推奨してるんだねえ。
OpenJDKはaptから簡単にインストールできるから好き……というかJavaに興味ないから処理系はどうでもよかったりする。

Jenkinsユーザの設定

パスワードの設定とか、gitを入れたりとかnodebrewをインストールしたりとか。

$ sudo passwd jenkins
$ sudo apt-get install git
$ su - jenkins
$ wget -qO - git.io/nodebrew | perl - setup
$ echo 'export $PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bashrc
$ export $PATH=$HOME/.nodebrew/current/bin:$PATH
$ nodebrew install-binary 0.10.11
$ nodebrew use 0.10.11

てかこの手の設定ってみんなどうやってるんだろう……

Jenkinsから設定

ブラウザでJenkinsを開いて設定。Git Client Pluginは先に入れておくように。
で、シェルの実行で大事なのが、Ubuntuの場合はshebangをちゃんと書いてあげないとsourceとかが使えないらしくてちょっとハマった。

#!/bin/bash

source $JENKINS_HOME/.bashrc
nodebrew use 0.10.11
npm install
npm test

これでビルド実行すると自動的にテストされる!


これ、意外と面倒で(まあその分自由にできるんだけど)Travis-CIはほんとに偉大だなあと思ったのでした。
Travis-CIほんとに楽だわ。