Submit Search
Upload
ポストJenkins時代のCI戦略
•
48 likes
•
17,218 views
Hiroshi Maekawa
Follow
VSハッカソン倶楽部 CI勉強会で発表した資料となります。 https://vshtc.doorkeeper.jp/events/26853
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 41
Download now
Download to read offline
Recommended
iOSのCI as a Service事情
iOSのCI as a Service事情
Hiroshi Maekawa
なれる!IL
なれる!IL
Hiroshi Maekawa
ドメイン『駆動』『開発』
ドメイン『駆動』『開発』
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
Ciじゃない方のJenkins
Ciじゃない方のJenkins
Katsuhiro Miura
ギルドワークスの現場コーチ
ギルドワークスの現場コーチ
GuildWorks
会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話
Shuji Yamada
第9回Jenkins勉強会 超簡単Pipeline講座
第9回Jenkins勉強会 超簡単Pipeline講座
Hiroko Tamagawa
Recommended
iOSのCI as a Service事情
iOSのCI as a Service事情
Hiroshi Maekawa
なれる!IL
なれる!IL
Hiroshi Maekawa
ドメイン『駆動』『開発』
ドメイン『駆動』『開発』
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
Ciじゃない方のJenkins
Ciじゃない方のJenkins
Katsuhiro Miura
ギルドワークスの現場コーチ
ギルドワークスの現場コーチ
GuildWorks
会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話
Shuji Yamada
第9回Jenkins勉強会 超簡単Pipeline講座
第9回Jenkins勉強会 超簡単Pipeline講座
Hiroko Tamagawa
テストって何をするもの? - テストの5W1H -
テストって何をするもの? - テストの5W1H -
Hiroshi Maekawa
老舗大企業からスタートアップへの挑戦
老舗大企業からスタートアップへの挑戦
GuildWorks
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
Koichi ITO
kintoneの開発プロセスとプロジェクト管理ツール
kintoneの開発プロセスとプロジェクト管理ツール
Yuki Okada
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
Yuki Iwanari
テスト自動化の現場で困ること SI-Toolkitが解決すること
テスト自動化の現場で困ること SI-Toolkitが解決すること
yuichi_kuwahara
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
You_Kinjoh
Wantedly - 世界一"いいね!"される 求人サイトの作り方
Wantedly - 世界一"いいね!"される 求人サイトの作り方
Yoshinori Kawasaki
受託開発とRubyGems
受託開発とRubyGems
Koichi ITO
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
kimulla
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
Kiyotaka Oku
インタフェースのこころ
インタフェースのこころ
Koichi ITO
こだわりのkintone
こだわりのkintone
Yusuke Amano
サイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOps
Shuhei Eda
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
Hiroshi Maekawa
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
Go Sueyoshi (a.k.a sue445)
Stack2017 自動化困難な状況での活動方法
Stack2017 自動化困難な状況での活動方法
Tatsuya Ishikawa
GitHubEnterpriseからBitbucket(Stash) への移行事例
GitHubEnterpriseからBitbucket(Stash) への移行事例
知教 本間
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
Hiroshi Maekawa
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
Yuki Okada
Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理
You&I
Microsoft Team Foundation Service 入門
Microsoft Team Foundation Service 入門
You&I
More Related Content
What's hot
テストって何をするもの? - テストの5W1H -
テストって何をするもの? - テストの5W1H -
Hiroshi Maekawa
老舗大企業からスタートアップへの挑戦
老舗大企業からスタートアップへの挑戦
GuildWorks
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
Koichi ITO
kintoneの開発プロセスとプロジェクト管理ツール
kintoneの開発プロセスとプロジェクト管理ツール
Yuki Okada
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
Yuki Iwanari
テスト自動化の現場で困ること SI-Toolkitが解決すること
テスト自動化の現場で困ること SI-Toolkitが解決すること
yuichi_kuwahara
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
You_Kinjoh
Wantedly - 世界一"いいね!"される 求人サイトの作り方
Wantedly - 世界一"いいね!"される 求人サイトの作り方
Yoshinori Kawasaki
受託開発とRubyGems
受託開発とRubyGems
Koichi ITO
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
kimulla
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
Kiyotaka Oku
インタフェースのこころ
インタフェースのこころ
Koichi ITO
こだわりのkintone
こだわりのkintone
Yusuke Amano
サイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOps
Shuhei Eda
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
Hiroshi Maekawa
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
Go Sueyoshi (a.k.a sue445)
Stack2017 自動化困難な状況での活動方法
Stack2017 自動化困難な状況での活動方法
Tatsuya Ishikawa
GitHubEnterpriseからBitbucket(Stash) への移行事例
GitHubEnterpriseからBitbucket(Stash) への移行事例
知教 本間
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
Hiroshi Maekawa
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
Yuki Okada
What's hot
(20)
テストって何をするもの? - テストの5W1H -
テストって何をするもの? - テストの5W1H -
老舗大企業からスタートアップへの挑戦
老舗大企業からスタートアップへの挑戦
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
kintoneの開発プロセスとプロジェクト管理ツール
kintoneの開発プロセスとプロジェクト管理ツール
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
テスト自動化の現場で困ること SI-Toolkitが解決すること
テスト自動化の現場で困ること SI-Toolkitが解決すること
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
SIerは如何にしてGitHub Enterpriseを導入するにようになったか
Wantedly - 世界一"いいね!"される 求人サイトの作り方
Wantedly - 世界一"いいね!"される 求人サイトの作り方
受託開発とRubyGems
受託開発とRubyGems
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
インタフェースのこころ
インタフェースのこころ
こだわりのkintone
こだわりのkintone
サイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOps
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
「価値探索」がつないだ クライアントと開発者の絆 〜Craful開発チームの60日〜
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
Stack2017 自動化困難な状況での活動方法
Stack2017 自動化困難な状況での活動方法
GitHubEnterpriseからBitbucket(Stash) への移行事例
GitHubEnterpriseからBitbucket(Stash) への移行事例
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
スタートアップこそ巨人の肩に乗りまくれ! 〜Craful開発とMackerel〜
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
Similar to ポストJenkins時代のCI戦略
Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理
You&I
Microsoft Team Foundation Service 入門
Microsoft Team Foundation Service 入門
You&I
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
Koichi ITO
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
yuichi_kuwahara
Hivemall meetup vol2 oisix
Hivemall meetup vol2 oisix
Taisuke Fukawa
MA11 kintone
MA11 kintone
Takashi Ushirosako
Visual studioonlineとwebサイトで始めるci/cdの第一歩
Visual studioonlineとwebサイトで始めるci/cdの第一歩
Kazunori Hamamoto
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワーク
Maehana Tsuyoshi
Techcrunch hackathon 2013
Techcrunch hackathon 2013
Nao Tokui
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Yuki Ando
Changing Infrastructure operation by DevOps And Agile Development
Changing Infrastructure operation by DevOps And Agile Development
Taiji Tsuchiya
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
慎一 古賀
NetOps Coding#1 のお知らせ
NetOps Coding#1 のお知らせ
Taiji Tsuchiya
Microservicesのdesign patterns
Microservicesのdesign patterns
Naohiko Uramoto
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
cloudconductor
Circle ciで結果をslackに通知してみる
Circle ciで結果をslackに通知してみる
ynakahira
『駅すぱあと』新しい開発基盤の研究
『駅すぱあと』新しい開発基盤の研究
asatou
.NET Micro Framework で IoT
.NET Micro Framework で IoT
Yoshitaka Seo
[enPiT筑波大ワークショップ(成果発表会)情報交換会]全部スクラム!~SIerで大切だったこと、サービサーで大切だったこと~
[enPiT筑波大ワークショップ(成果発表会)情報交換会]全部スクラム!~SIerで大切だったこと、サービサーで大切だったこと~
Shigeki Morizane
Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2
Taiji Tsuchiya
Similar to ポストJenkins時代のCI戦略
(20)
Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理
Microsoft Team Foundation Service 入門
Microsoft Team Foundation Service 入門
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
Hivemall meetup vol2 oisix
Hivemall meetup vol2 oisix
MA11 kintone
MA11 kintone
Visual studioonlineとwebサイトで始めるci/cdの第一歩
Visual studioonlineとwebサイトで始めるci/cdの第一歩
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワーク
Techcrunch hackathon 2013
Techcrunch hackathon 2013
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Changing Infrastructure operation by DevOps And Agile Development
Changing Infrastructure operation by DevOps And Agile Development
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
NetOps Coding#1 のお知らせ
NetOps Coding#1 のお知らせ
Microservicesのdesign patterns
Microservicesのdesign patterns
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
Circle ciで結果をslackに通知してみる
Circle ciで結果をslackに通知してみる
『駅すぱあと』新しい開発基盤の研究
『駅すぱあと』新しい開発基盤の研究
.NET Micro Framework で IoT
.NET Micro Framework で IoT
[enPiT筑波大ワークショップ(成果発表会)情報交換会]全部スクラム!~SIerで大切だったこと、サービサーで大切だったこと~
[enPiT筑波大ワークショップ(成果発表会)情報交換会]全部スクラム!~SIerで大切だったこと、サービサーで大切だったこと~
Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2
More from Hiroshi Maekawa
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
Hiroshi Maekawa
老舗大企業からスタートアップでの二年間
老舗大企業からスタートアップでの二年間
Hiroshi Maekawa
芯を通す開発を目指して ー アジャイル"ファン"が本気でアジャイル開発に取り組んだ2年間 ー
芯を通す開発を目指して ー アジャイル"ファン"が本気でアジャイル開発に取り組んだ2年間 ー
Hiroshi Maekawa
第8回大阪Jenkins勉強会LT: iOS vs CI
第8回大阪Jenkins勉強会LT: iOS vs CI
Hiroshi Maekawa
Visual Studio Online as a CI Service
Visual Studio Online as a CI Service
Hiroshi Maekawa
Travis, Circle そして Jenkins 2.0
Travis, Circle そして Jenkins 2.0
Hiroshi Maekawa
Dockerとdev ops
Dockerとdev ops
Hiroshi Maekawa
Getting Start with React Native
Getting Start with React Native
Hiroshi Maekawa
「価値探索」がつないだクライアントと開発者の絆
「価値探索」がつないだクライアントと開発者の絆
Hiroshi Maekawa
テスト自動化のパターンと実践
テスト自動化のパターンと実践
Hiroshi Maekawa
ホントは楽しいエイブンポー
ホントは楽しいエイブンポー
Hiroshi Maekawa
テスト自動化のパタンランゲージ@Agilet Tour Osaka
テスト自動化のパタンランゲージ@Agilet Tour Osaka
Hiroshi Maekawa
雑食系エンジニアの作りかた
雑食系エンジニアの作りかた
Hiroshi Maekawa
T4 Template 入門
T4 Template 入門
Hiroshi Maekawa
窓辺に立つ執事
窓辺に立つ執事
Hiroshi Maekawa
自動化パタンランゲージ
自動化パタンランゲージ
Hiroshi Maekawa
Gitを使いこなしてみよう!
Gitを使いこなしてみよう!
Hiroshi Maekawa
事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント
Hiroshi Maekawa
C#とaop
C#とaop
Hiroshi Maekawa
Linq to XXXX(Reactive Extensionsの紹介)
Linq to XXXX(Reactive Extensionsの紹介)
Hiroshi Maekawa
More from Hiroshi Maekawa
(20)
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
新しい技術を取り入れるための実験のやり方 〜サーバーレス・機械学習・PWAを実戦に投入するまで〜
老舗大企業からスタートアップでの二年間
老舗大企業からスタートアップでの二年間
芯を通す開発を目指して ー アジャイル"ファン"が本気でアジャイル開発に取り組んだ2年間 ー
芯を通す開発を目指して ー アジャイル"ファン"が本気でアジャイル開発に取り組んだ2年間 ー
第8回大阪Jenkins勉強会LT: iOS vs CI
第8回大阪Jenkins勉強会LT: iOS vs CI
Visual Studio Online as a CI Service
Visual Studio Online as a CI Service
Travis, Circle そして Jenkins 2.0
Travis, Circle そして Jenkins 2.0
Dockerとdev ops
Dockerとdev ops
Getting Start with React Native
Getting Start with React Native
「価値探索」がつないだクライアントと開発者の絆
「価値探索」がつないだクライアントと開発者の絆
テスト自動化のパターンと実践
テスト自動化のパターンと実践
ホントは楽しいエイブンポー
ホントは楽しいエイブンポー
テスト自動化のパタンランゲージ@Agilet Tour Osaka
テスト自動化のパタンランゲージ@Agilet Tour Osaka
雑食系エンジニアの作りかた
雑食系エンジニアの作りかた
T4 Template 入門
T4 Template 入門
窓辺に立つ執事
窓辺に立つ執事
自動化パタンランゲージ
自動化パタンランゲージ
Gitを使いこなしてみよう!
Gitを使いこなしてみよう!
事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント
C#とaop
C#とaop
Linq to XXXX(Reactive Extensionsの紹介)
Linq to XXXX(Reactive Extensionsの紹介)
ポストJenkins時代のCI戦略
1.
ポストJenkins時代の 自動化戦略 Posaune @ Guildworks 2015/07/11(土)
CI勉強会 #vshtc 1
2.
自己紹介 • 前川博志 aka
@Posaune • ギルドワークス株式会社で働いています • 勝手にALMエンジニアを名乗ってます • Microsoft MVP for Visual Studio ALM 2015/07/11(土) CI勉強会 #vshtc 2
3.
ギルドワークス • 現在7名の小さな会社 • 設立一年ちょっとのベンチャー企業 •
ソフトウェアの超上流での見立てから開発、果ては現場改善 までやってます • モットーは「正しいものを正しくつくる!」 2015/07/11(土) CI勉強会 #vshtc 3
4.
諸々お知らせ! from ギルドワークス 2015/07/11(土) CI勉強会
#vshtc 4
5.
Blog やってます! http://blog.guildworks.jp/ 2015/07/11(土) CI勉強会
#vshtc 5
6.
カンファレンス、 やります! 2015/07/11(土) CI勉強会 #vshtc
6
7.
2015/07/11(土) CI勉強会 #vshtc
7
8.
お悩み・相談募集中 • 現場が同しようもないから何とかしたい・・・ • アイデアを形にできない・・・ •
お気軽にご相談を! http://guildworks.jp/about/work/ 2015/07/11(土) CI勉強会 #vshtc 8
9.
お知らせ終わり。 2015/07/11(土) CI勉強会 #vshtc
9
10.
本日のAgenda • Jenkins一択時代の終焉 • ポストJenkins時代のCI •
ギルドワークスのCI事情 2015/07/11(土) CI勉強会 #vshtc 10
11.
Jenkins一択時代の終焉 2015/07/11(土) CI勉強会 #vshtc
11
12.
Jenkinsのもたらしたもの • 職人さん!ビルドお願いしやす! Jenkinsさんがビルドしといてくれたの使おう • 自動ビルドとかわからないこわい Jenkinsさんならなんとかなる! •
この作業めんどいー。 それJenkinsでできませんか? 2015/07/11(土) CI勉強会 #vshtc 12
13.
Jenkins後の世界 • 自動ビルドの「キャズム」超え • CIを当たり前に 2015/07/11(土)
CI勉強会 #vshtc 13
14.
Jenkins後の世界 • 自動ビルドの「キャズム」超え • CIを当たり前に •
Jenkins職人 2015/07/11(土) CI勉強会 #vshtc 14
15.
Jenkinsの"職人化" • あなたのところのJenkins、みんなメンテできますか? • どんなプラグインが入っているか、管理できてますか? •
新しいJobを追加するとき、誰がやっても同じようなJobを作 ってくれますか? • Jenkinsサーバが煙をあげていても、あなたは有給をとれます か? 2015/07/11(土) CI勉強会 #vshtc 15
16.
Jenkinsがボトルネックに • 高度に専門化されたシェル +
手作業 高度に専門化されたJenkinsジョブ • 結局トラブル時にはJenkins職人が呼ばれる • Jenkinsサーバでエラーが起こると色々終わる • 10年継ぎ足し続けたJenkinsジョブ、ってゾッとしない? 2015/07/11(土) CI勉強会 #vshtc 16
17.
Jenkins以外の選択肢 • ビルドツール・ビルドサポートツールの進化により、 Jenkinsのジョブ相当の物は簡単にスクリプトで書けるよう になった • ローカルのVMが流行るかと思ったらもうそこは
クラウドと コンテナの世界 だった。 2015/07/11(土) CI勉強会 #vshtc 17
18.
Jenkins以外の選択肢 • なら、クラウド上に単純な定形作業だけをしてくれる、ビル ドサーバ群があればいいんじゃね? • そう、
CI as a Service や!! 2015/07/11(土) CI勉強会 #vshtc 18
19.
ポストJenkins時代のCI 2015/07/11(土) CI勉強会 #vshtc
19
20.
CI as a
Service • 文字通り、サービスとしてCI(ビルド)を提供している • Travis CI • Circle CI • drone.io • Wercker • Visual Studio Online 2015/07/11(土) CI勉強会 #vshtc 20
21.
CI as a
Service • だいたい以下のことを行う • あたらしいVMを起動 • VMの環境セットアップ(yum install) • ビルド・テスト環境のセットアップ(bundle install) • ビルド・テスト(rake build ) • 別の環境にデプロイメント(git push heroku master) 2015/07/11(土) CI勉強会 #vshtc 21
22.
設定はこんな感じに machine: environment: XCODE_SCHEME: SwiftLesson test: override:| - mkdir
-p $CIRCLE_TEST_REPORTS/xctest - Xctool -project SwiftLesson.xcodeproj -scheme SwiftLesson -sdk iphonesimulator -reporter junit:$CIRCLE_TEST_REPORTS/xctest/test-result.xml clean test (Circle CIの例) 2015/07/11(土) CI勉強会 #vshtc 22
23.
CI as a
Service のメリット • サーバを用意せずに始められる • 使い捨てのクリーンな環境が保証される • CIサービス上の設定項目はそんなに無いので職人かを防げる • 無料枠がリッチなサービスが多い • 最初の導入ステップが簡単 • 他のサービスとの連携が簡単で、リモート開発との相性◎ 2015/07/11(土) CI勉強会 #vshtc 23
24.
デモ: CircleCIでビルド してみよう! 2015/07/11(土) CI勉強会
#vshtc 24
25.
CI as a
Service のデメリット • 凝ったことをやり始めるとシェル地獄に陥る • gradleやYeoman, rakeなどのビルドツールの活用必須 • 大規模に走らせ始めるとランニングコストがかかる • サービスが止まった時に焦る • ローカルでも動くスクリプトをサービス上でも叩く、とか しとかないと困る 2015/07/11(土) CI勉強会 #vshtc 25
26.
Jenkinsへの影響 • Jenkins自体も、プラグインの固まり方式以外の手段を取り始 めている Jenkins Workflow
Plugin def flow node('master') { git url: 'https://hogehoge@bitbucket.org/hogehoge/workflow-test.git' flow = load 'groovy/flow.groovy' flow.builds() } 2015/07/11(土) CI勉強会 #vshtc 26
27.
ギルドワークスのCI事情 2015/07/11(土) CI勉強会 #vshtc
27
28.
使っているCI Service • Circle
CI • Wercker CI 2015/07/11(土) CI勉強会 #vshtc 28
29.
2015/07/11(土) CI勉強会 #vshtc
29
30.
Why Circle CI? •
Privateの無料利用枠で結構行ける • Linux環境のみならず、iOSのビルドもできる • チャットで結構素早くレスポンスが帰ってくるので安心 • 環境追随もそこそこ速い 2015/07/11(土) CI勉強会 #vshtc 30
31.
Circle CIを用いたiOSビルドパイプライン 2015/07/11(土) CI勉強会
#vshtc 31
32.
2015/07/11(土) CI勉強会 #vshtc
32
33.
Why Wercker CI? •
そこそこ長期間サービス提供しているのに完全無償 • ビルドコンテナの柔軟性が非常に高い 2015/07/11(土) CI勉強会 #vshtc 33
34.
Wercker CIの活用どころ • 他のCIサービスでよく困ること •
yum install texlive-latex おせえええええ!! • gem install nokogiri おせえええええ!! • 環境構築に時間が掛かる • werckerなら困らない 2015/07/11(土) CI勉強会 #vshtc 34
35.
WerckerCIのビルドコンテナ • 背後でdocker or
Vagrant LXCをぶん回しているっぽい • コンテナのビルド結果を定義できる • コンテナそのものをビルドして保存しておいてくれる • 保存したコンテナを自由に使える 2015/07/11(土) CI勉強会 #vshtc 35
36.
ギルドワークスでの活用例 • 書籍自動ビルドサービス • PDFのビルド環境は結構大変、かつ標準コンテナではできな いこと •
calibreなどの、マニアックでそこそこ導入に時間がかかるソ フトウェア入のコンテナを作った • https://github.com/posaunehm/calibre-jp-box 2015/07/11(土) CI勉強会 #vshtc 36
37.
これからのCI 2015/07/11(土) CI勉強会 #vshtc
37
38.
世は正に大CI時代 2015/07/11(土) CI勉強会 #vshtc
38
39.
変えられない潮流 • コンテナ式のDisposableな環境でのビルド・テスト • あるいは、ビルドしたコンテナをそのままクラウドへ •
「ちゃんと動いたものをそのまま本番へ」 2015/07/11(土) CI勉強会 #vshtc 39
40.
それでもビルドは回っている • 「ビルドすること」は目的でなく手段 • ユーザの価値にならないと意味無いですよねー •
世の潮流を見ながら、自分自身の環境にあったビルド環境を 考えましょう • 言うても自家Jenkinsの要望はまだまだ強い 2015/07/11(土) CI勉強会 #vshtc 40
41.
Enjoy, Continuous Integration!! 2015/07/11(土)
CI勉強会 #vshtc 41
Download now