無料で使える CI サービス 8 個まとめ

CI サービスをいくつか触ってみたのでまとめ。
今回の目的は、テストを実行すること。なので、ビルドやデプロイ辺りはちゃんとは見ていない。
ドキュメントで確認しただけの項目などもあったりするので、間違っていたらごめんなさい。教えてもらえると助かります。
ただ、これは記事を書いた時点での比較で、今後のサービスの変更に対応する予定はないです。

触ってみたサービス一覧

アルファベット順。

codeship ってのもあったけど、無料プランは月100ビルドまでとかで常用には耐えないと感じたので中身見てない。

機能比較

機能比較は全て無料プランでのもの。有料だと対応している場合でもここでは x にしている。
比較項目は私の独断と偏見で適当に選出した。

項目 AppVeyor CircleCI Drone IO Magnum CI semaphore shippable Travis CI wercker 備考
YAML による設定 × × リポジトリ内の YAML ファイルからビルド手順を設定できる
Web UI による設定 × × × Web UI でビルド手順のスクリプトを書くことができる
GitHub 連携 GitHubリポジトリ一覧から新規プロジェクトを作れる
BitBucket 連携 × × BitBucket のリポジトリ一覧から新規プロジェクトを作れる
GitHub PR 対応 × × GitHub の Pull Request を自動でビルドしてステータスを返せる
ビルド環境キャッシュ × × × × × 複数ビルド間を跨ぐキャッシュ領域を利用できる
手動リビルド × *1 過去のビルドを手動でリビルドできる
複数環境ビルド × × × × × 環境変数などで複数の環境に対してビルドできる
private なプロジェクト × × × ビルド状況などを private にできる(かなり未検証)
ビルド時間制限 30分 20分 15分 30分 60分 60分 50分 25分 無出力時間による制限が別途ある場合もある

YAML による設定の利点は、プロジェクト構成の変更とビルド手順の変更を紐付けることができること。
Web UI による設定の利点は、プロジェクトに直接関係ないファイルを置かなくて済むこと。特にファイルを置く権限がない場合などには助かる。

各サービスについて雑感

以下、かなり主観かつざっくりな雑感。

AppVeyor


http://www.appveyor.com/

.NET CI
.NET 使 Windows  Windows CI.NET 使 Windows 
Windows (.bat) PowerShell(.ps1)PowerShell  .NET 
 QUEUE 

40FreeProfessionalPremium 30 Enterprise 50

CircleCI


https://circleci.com/


YAML pre()override()post()

Drone IO


https://drone.io/

GoCI
Drone IO 1
Pull Request PR push  API  Pull Request 

Magnum CI


https://magnum-ci.com/

 public beta CI beta 
使使
beta private 使 beta 

semaphore

https://semaphoreapp.com/

ビルド中にスレッドが使えるのが特徴。ビルドパイプラインの各コマンド単位で、どのスレッドで走らせるか指定できる。無料で 1 ビルド中に 2 スレッドまで使える。
あとはプロジェクト構成を見て、一般的な構成の場合は自動で検出してビルド設定を自動で終わらせてくれるらしい。私が試したプロジェクトは一般的な構成ではなかったので、どこまでやってくれるのかよくわかってない。

shippable


https://www.shippable.com/

TravisCI.travis.yml TravisCI language  generic ()shippable 
Web UI 

Travis CI

https://travis-ci.org/

恐らく今回まとめた中では一番有名な CI サービス。
GitHub 限定とは言え、テストをするのに必要な機能は十分揃っている。鉄板。

wercker


http://wercker.com/

CIbox  step 
box  wercker 使使
step 1bash 1wercker  step step Amazon 3S npm install 1 step  script step  bash  step 

まとめ

無料でもこれだけの選択肢があるというのがすごい。
よりどりみどりなので、各自のユースケースにあった CI サービスを選んで使うといいと思う。

*1:ブランチ最新のみ