実践 travis-ci.org
最近、CPAN モジュールを全部 travis-ci.org にあげて All Green にしたのでちょっとメモを残す。
基本
travis での設定もろもろは、本家のドキュメントにまとまっているので、それを読めばここのページに書かれてることはほとんど読む必要がない。ただ、なんか目次の順番がいまいちだったので、こうならんでた方がいいのになというインデックスと、いくつか情報をピックアップ。
- Travis の CI環境
- OS: 32-bit Ubuntu Linux 12.04 (server edition)
- VCS: Git, Mercurial, Subversion (git は最新に近いものが入っているらしい)
- build tools: GCC 4.6.x, Clang 3.1.x, make, autotools, cmake, scons
- Environment variables: いろいろ設定されているが
CI=true
,TRAVIS=true
あたりは使いそう apt
も入っている(デフォルトで -y )- OpenSSL, ImageMagick
- サーバ周りは Chef でコントロールしているようす
- ストレージ周りのミドルウェアなどもかなり豊富に揃っている
- 言語別使い方サマリー
- .travis.yml に記述するビルドフェーズについて
- travis でのビルドフェーズは次のようになっている: 各
phase
が .travis.yml で実行指定できるキーになる。- Switch language runtime
- Clone project repository from GitHub
- Run
before_install
scripts (if any) - cd to the clone directory, run dependencies installation command (default specific to project language)
- Run
before_script
scripts (if any) - Run test
script
command (default is specific to project language). It must use exit code 0 on success and any code on failure. - Run
after_script
scripts (if any)
- travis でのビルドフェーズは次のようになっている: 各
- 小ネタ
- コミットメッセージに
[ci skip]
って入れておくと、CI がスキップされる
- コミットメッセージに
.travis.yml のサンプル
cpanm のオプションに、デフォルトで --quiet
がついてくるようなので、不要なら以下のように .travis.yml に書くと良さげ。
env: PERL_CPANM_OPT="--installdeps --notest ."
- ビルド前にライブラリをインスコするパターン
apt で入れられればなんでもいけそう。
API
- ビルドステータスを画像表示する: http://about.travis-ci.org/docs/user/status-images/
- The API
green アピール大事。