2012/11/09

実践 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 で実行指定できるキーになる。
      1. Switch language runtime
      2. Clone project repository from GitHub
      3. Run before_install scripts (if any)
      4. cd to the clone directory, run dependencies installation command (default specific to project language)
      5. Run before_script scripts (if any)
      6. Run test script command (default is specific to project language). It must use exit code 0 on success and any code on failure.
      7. Run after_script scripts (if any)
  • 小ネタ
    • コミットメッセージに [ci skip] って入れておくと、CI がスキップされる

.travis.yml のサンプル

cpanm のオプションに、デフォルトで --quiet がついてくるようなので、不要なら以下のように .travis.yml に書くと良さげ。

env: PERL_CPANM_OPT="--installdeps --notest ."

apt で入れられればなんでもいけそう。

API

green アピール大事。

サイト内検索