circleciを勝手に紹介・宣伝 + おまけ [osc hokkaido 2015 lt]
TRANSCRIPT
そもそも CI って何ぞ?
CI( 継続的インテグレーション ) :– コンパイル / テストといったビルド処理を頻繁に繰り返す
ことで問題の早期発見や品質改善を目指す手法
CI すると嬉しいこと:– バグの早期発見
• ローカルでテストをするのをうっかり忘れても CI でテストが落ちたことを検知できる
– 仮想環境 (CirlceCI の VM) という共通の環境でテストができる• 「自分のローカル環境ではテストが通ったけど、何故か他の人の
環境ではテストが落ちる」という問題を防げる、原因の追求がしやすい
CircleCI 基本
• 基本やってることは他の CI と変わらない– TravisCI, MagnumCI, Jenkins…– CircleCI の実行速度が速いとか色々細かい差はあるけど
…
• Github アカウントと連携 ( 必須 )– Github リポジトリ上のプロジェクトを track する
Base:x86_64, Ubuntu 12.04(username=ubuntu), Kernel version: 3.2,git 1.8.5.6, gcc 4.6.3, g++ 4.6.3, GNU make 3.81※ 他の OS 使いたいなら Docker で
Language:Ruby(1.8.7-p302~2.2.0), Node.js(iojs-v1.3.0~0.8.2), Python(2.6.6~3.4.2), PHP(5.3.3~5.6.5),Java Scala, Clojure, Haskell..
Database:couchdb (1.3.0), memcached (1.4.13), mongodb (2.4.13),mysql (5.5.41), postgresql (9.4 with postgis 2.0 extensions),rabbitmq (3.4.4), redis (2.8.19)
※ mysql と postgresql はセットアップ時に ubuntu が call してるので password とか気にしなくて良い
・設定ファイルの circle.yml で定義する
CircleCI で使えるもの
CircleCI 特徴
• Docker 対応してます• コンテナ 1 つ無料、 2 つ目以降は $50/month
• 並列ビルドしなければ private リポジトリも無料で使える
• 前回ビルドしたリポジトリをキャッシュできる– 次回のビルドで差分だけとってこれる– でもやりすぎると依存関係の更新が疎かに
• CircleCI の VM に SSH ログインできる– github に登録してある公開鍵で ssh できる
• コンテナ 1 つ無料、 2 つ目以降は $50/month
• Docker 対応しました• SSH ログインできる• github に登録してある公開鍵で ssh できる
CircleCI 特徴: SSH ログインできる
CircleCI まとめ• GUI 綺麗、シンプル• Github アカウントあればすぐに使える• SSH してログとか確認できるの便利– リビルドし直せばまた 30 分間 ssh 接続可能– 最近複数人対応したよ
• Docker 対応済み– コンテナ移設するだけで環境が整うの楽ですね
• 1 コンテナ無料、 2 つ以降 $50/month のお手頃価格– 並列ビルとしなければ Private リポジトリでも無料
• CI 入門として使うのにちょうど良い
PyCon mini Sapporo
• 公式Webページ– http://sapporo.pycon.jp/2015/
• 参加登録– http://pyconjp.connpass.com/event/16255/