# 実践 travis-ci.org 最近、CPAN モジュールを全部 [[http://travis-ci.org/ travis-ci.org]] にあげて All Green にしたのでちょっとメモを残す。 ## 基本 travis での設定もろもろは、本家のドキュメントにまとまっているので、それを読めばここのページに書かれてることはほとんど読む必要がない。ただ、なんか目次の順番がいまいちだったので、こうならんでた方がいいのになというインデックスと、いくつか情報をピックアップ。 * [[http://about.travis-ci.org/docs/user/ci-environment/ 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 でコントロールしているようす * ストレージ周りのミドルウェアなどもかなり豊富に揃っている * [[http://about.travis-ci.org/docs/user/getting-started/ 言語別使い方サマリー]] * [[http://about.travis-ci.org/docs/user/languages/perl/ Perl]] * [[http://about.travis-ci.org/docs/user/build-configuration/ .travis.yml に記述するビルドフェーズについて]] * travis でのビルドフェーズは次のようになっている: 各 `phase` が .travis.yml で実行指定できるキーになる。 1. Switch language runtime 1. Clone project repository from GitHub 1. Run `before_install` scripts (if any) 1. cd to the clone directory, run dependencies installation command (default specific to project language) 1. Run `before_script` scripts (if any) 1. Run test `script` command (default is specific to project language). It must use exit code 0 on success and any code on failure. 1. Run `after_script` scripts (if any) * 小ネタ * コミットメッセージに `[ci skip]` って入れておくと、CI がスキップされる ## .travis.yml のサンプル * Perl シンプルなもの * cpanm のオプションに、デフォルトで `--quiet` がついてくるようなので、不要なら以下のように .travis.yml に書くと良さげ。 env: PERL_CPANM_OPT="--installdeps --notest ." * ビルド前にライブラリをインスコするパターン * apt で入れられればなんでもいけそう。 ## API * ビルドステータスを画像表示する: * [[http://about.travis-ci.org/docs/dev/api/ The API]] green アピール大事。