Slide 1

Slide 1 text

Drone.io でテスト自動化 2019.03.16 Kento Takano

Slide 2

Slide 2 text

自己紹介 Kento Takano(@Kento75) ・自称フロントエンドエンジニア ・好きな言語 → React.js ・好きなクラウド → GCP ・好きな女優 → 新垣結衣 Blog → https://overreact.tk Twitter → https://twitter.com/Kento751 Github → https://github.com/Kento75

Slide 3

Slide 3 text

Drone.io とは? ・いわゆる CI as a Service のこと(オンプレ版もある) ・Github、Gitlab、Bitbucket etc...対応 ・YAMLでテスト、デプロイ設定を記述できる ・Circle CI、Travis CI と同様に都度、環境をクリーンする ・ビルドごとに独立したDocker Containerを立ててCI/CDを実行する https://drone.io/

Slide 4

Slide 4 text

Jenkinsでつらいこと(つらかったこと) ・作った人以外、誰も触れない ・スレーブサーバの環境が壊れることがある(主観) ・ビルド実行用の古いshellが残っていて管理しきれない ・バージョンアップで、ジョブが壊れることがある ・使えば使うほど汚れていく(メンテ大変)

Slide 5

Slide 5 text

Drone.io のいいところ ・構築は、公式のDocker Image があるので簡単 ・設定ファイルがYAML 1ファイルのみ ・スレーブサーバでのテストは、常にDockerを使用 ・使用するDocker Image は自由に選択できる ・Jenkinsと同じく、オンプレは無料

Slide 6

Slide 6 text

Drone.io と AWS を使用してできるCI/CD push マスタ スレーブ AWS etc... デプロイ テスト webhook テスト結果通知 GitLabからのwebhook、Docker内でのテスト、S3等へのデプロイ、Slackへ のテスト結果通知のフローを構築できる!

Slide 7

Slide 7 text

Drone.io ではできないこと ・SaaS版Drone.ioでは、Linux の Docker Image しかサポートしていない  Windows、Mac OSのDocker Image を使えない ・オンプレ版の場合、マスタもDockerでの運用となるため、  T2.microでの動作はきつい Jenkinsと比べて、それほどデメリットはないので、 開発効率を上げるために導入してみてはいかがでしょうか?