DjangoのプロジェクトをJenkinsでビルドする場合、django-jenkinsを使うと便利。
PyPIからdjango-jenkinsをインストールできる。
$ pip install django-jenkins
jenkins用のsettingsファイルを用意する
Djangoのプロジェクトにjenkins用のsettingsファイルを追加して使う。
manage.py jenkinsコマンド
manage.py jenkinsコマンドでテストを実行できる。
django-jenkinsのmanage.py jenkinsコマンドには以下のような機能がある。
Jenkinsのシェルの設定
Jenkinsのシステム設定でシェル実行ファイルを/bin/bashにしておく。
これをやらないとifやsourceが使えなかった。
Mercurialリポジトリからのビルド設定
先日作成した、guestbookアプリケーションを含むmyprojectにはdjango-jenkinsの設定を入れてあるので、これをビルドしてみる。
tokibito / sample_nullpobug / source / django / myproject — Bitbucket
プロジェクト名 | myproject-guestbook |
---|---|
ソースコード管理システム | Mercurial |
Repository URL | https://bitbucket.org/tokibito/sample_nullpobug |
とし、ビルドではシェルスクリプトの実行で、以下のように設定。
if [ ! -d venv ]; then virtualenv --distribute venv fi source venv/bin/activate cd django/myproject/ pip install -r requirements.txt python manage.py jenkins --settings=myproject.settings_jenkins
virtualenvはあらかじめ、サーバーにインストールしておく。これでvirtualenvを作成して、ビルドを実行してくれる。
ビルド後の処理では、JUnitテスト結果の集計を以下のように設定した。
テスト結果XML | django/myproject/reports/*.xml |
---|