普通にXcodeのプロジェクトに対してTravis CIでCIしているケースはよく見ますが、theos向けのものは見たことがないのでやってみました。
サンプルプロジェクト
SwipeShiftCaret を使いました。
TravisのMac VMはhomebrew
が使えますのでdpkg
をインストールし、theosを配備してやればビルド環境として整います。
タイミングはapt-get等で環境をととのえるフェーズとしてbefore_install
があるため、そこで配備します。git submodule等があればそちらのコードもこのフェーズで取得すると良いでしょう(git cloneではサブモジュールまで取得されません)。
theosの配備についてはセットアップ及びライブラリ・ヘッダー更新用のスクリプトをTravis対応用にカレントディレクトリに展開するよう修正したものを使いました。
before_install:
- brew update
- brew install dpkg
- curl https://raw.github.com/r-plus/dotfiles/master/install_theos.sh | bash
そして本命のビルドはmakeを流せば良いため
script:
- make
これでTravis上でビルド可能です。TravisとのServiceHookを有効にしたリポジトリで、これらを記述した.travis.yml
をプッシュすれば以後はプッシュ毎、PullReq毎にCIが走ってくれます。
リターンコードが0であればSuccessになり、晴れて https://travis-ci.org/r-plus/SwipeShiftCaret.png?branch=master のアイコン がPassingになります、READMEにでも貼っておきましょう。