atskimura-memo

あまり仕事とは関係なく適当に書きます。開発ネタが多いかもしれません。

CI(継続的インテグレーション)サービスまとめ・14個!

CIって?

CIはContinuous Integration(継続的インテグレーション)の略です。

継続的インテグレーションとは、ソフトウェア開発手法において、プロジェクトメンバーがそれぞれ開発した結果を頻繁に結合し、定期的にビルドやテストを行うことである。問題点を早期に摘出することができ、効率的な開発に役立つ。

不具合は早く見つける方が対策費用が抑えられるため、ソフトウェアのビルドを頻繁に行うのが好ましく、ビルド結果が正しいことを検証するためにすぐにテストを行う。このような手続きは出来る限り自動化するのが好ましい。そのため、継続的インテグレーションを実践するためには、結合のためのビルドとテストの自動化のために「CIサーバー」などと呼ばれる専用コンピュータを用意することが推奨されている。

ちなみに、ソフトウェア開発手法のひとつである「エクストリームプログラミング」では、継続的インテグレーションは実践すべきこととされている。

引用:「継続インテグレーション」 (Continuous Integration): - IT用語辞典バイナリ

Wikipediaよりこちらの方がわかりやすかったので引用させていただきました。だいたいGithubにpushしたら、CIサーバーが自動的にソースを取得して、ビルド・テストして、失敗したらアラート通知してくれる。といった使い方をします。

CIサービスまとめ

有名なTravis CIやCircleCIはGithubしか使えない。Bitbucketでも使えるCIサービスを調べていたら、出てくるわ出てくるわ、たくさんありました。
オープンソースやオンプレミスも加えればまだまだありますが、今回はクラウドサービスのみをまとめました。
ちなみに見つけただけでほとんど使っていないので、使い方は他の記事を見てくださいm( )m

Bitbucket使える系

Bitbucketが使えるのを探していたので、こういう分類です。

1. drone.io

https://drone.io/

公開リポジトリは無料、プライベートリポジトリは有償という価格体系。$25〜。

解説記事

f:id:a_kimura:20140206170703j:plain

2. wercker

http://wercker.com/

まだベータ。ベータ中は何リポジトリでも無料です。
でも、25分以内にビルドが終わらないとダメです。

解説記事

f:id:a_kimura:20140206170909j:plain

3. Bamboo

https://www.atlassian.com/ja/software/bamboo

AtlassianがCIサービスやってたんですね。知りませんでした。
無料プランなし。$10〜。
価格体系がよくわからない(>_<) EC2を別に立てなきゃいけないの?ジョブってなんだろ?

JIRA オンデマンドを購入する必要があります
Amazon EC2 アカウントが必要です

引用:Bamboo - Pricing | Atlassian

f:id:a_kimura:20140206183946j:plain

4. Magnum CI

https://magnum-ci.com/

価格が書いてない上に、ベータとも書いてないけど、プライベートリポジトリが無制限に無料??
アカウント作ると「You are currently using free plan」と表示されているから有償プランをやる気はあるようだが。

解説記事

f:id:a_kimura:20140206170933j:plain

5. Node.ci

https://node.ci/

node.jsしか使えない。
drone.ioと同じく、公開リポジトリは無料で、プライベートリポジトリは有料という価格体系。$19。

f:id:a_kimura:20140206170951j:plain

6. Codeship

https://www.codeship.io/

$9の最安プランからプライベートリポジトリ無制限。ただし、1ヶ月のビルド回数がプランによって変わるという他とはちょっと違う価格体系。ちなみに$9プランは月50ビルドまで。

f:id:a_kimura:20140206171023j:plain

7. Appveyor

http://www.appveyor.com/

.NET専用という変わり種。
価格体系は公開リポジトリ無料、プライベートリポジトリ有料というオーソドックスなもの。$19〜。

f:id:a_kimura:20140206171039j:plain


Bitbucket使えない系

8. Travis CI

http://travis-ci.com/

オープンソースソフトウェアの多くがここでCIしている。他の公開リポジトリ無料サービスと違い、ビルドスクリプトとビルドログが公開されてしまうので注意。
いつの間にかプライベートリポジトリ有償プランを始めていた。$129〜。なんか高いよ。

解説記事

f:id:a_kimura:20140206171056j:plain

9. CircleCI

https://circleci.com/

無料プランなし。$19〜。

解説記事

f:id:a_kimura:20140206171110j:plain

10. Semaphore

https://semaphoreapp.com/

無料プランなし。$14〜。

f:id:a_kimura:20140206171127j:plain

11. Shippable

https://www.shippable.com/

まだ公開リポジトリ無制限+プライベートリポジトリ1つ無料のプランのみで有償プランはない。
無料プランにプライベートリポジトリがあるのはここだけかも。

解説記事

f:id:a_kimura:20140206171142j:plain


Jenkins系

オープンソースで一番有名なCIソフトウェアのJenkinsをホストしているサービスがいくつかあったのでまとめます。
もっとあるかもしれません。もう疲れました。

12. CloudBees

http://www.cloudbees.com/

Jenkinsの開発者の川口耕介さんがいる会社です。
DEV@cloudというのがCIサービスで、月300分までの無料プランがあります。ちなみにBitbucketも使えます。
BuildHiveというGithubの公開リポジトリなら無料で使えるサービスもやっています。

f:id:a_kimura:20140206171159j:plain

13. ShiningPanda

https://www.shiningpanda-ci.com/

JenkinsをHostingしているだけっぽい。$12〜。

f:id:a_kimura:20140206171218j:plain

14. Jenkins Hosting

http://jenkinshosting.com/

JenkinsをHostingしているだけっぽい。
もうPricingのページを見るだけでちゃんとやっているのか怪しい。

f:id:a_kimura:20140206171233j:plain


まとめ

だいたい価格は同時実行数とプライベートリポジトリ数に依存する価格体系ですね。

プライベートリポジトリが安いサービスは、月50ビルド制限つき$9のCodeship。ビルド数無制限で安いのは、1リポジトリで$14のSemaphoreか、5リポジトリで$25のdrone.ioですかね。

プライベートリポジトリが無料なサービスは、まず月300分までだけど、CloudBees
Magnum CIwerckerも無料だけど、werckerはベータだし、Magnum CIは何も書いてないし、この辺りはいつまで無料なのかわからない。
Shippableはプライベートリポジトリ1つならずっと無料なんじゃなかろうか。

公開リポジトリは無料なのがいっぱいあるので好きなのを使ってください。

あとは使える言語が違ったり、ビルド時間に制限があったり、APIがあったり、いろいろ違うので皆さんどんどん試して記事にしてください!

いやー予想以上にいっぱいありますね。

追記

2014/03/11 11:18

Magnum CIとShippableの解説記事を書いたので本記事中にも追加しました。