Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ベンチャー企業がCircleCIを選んだ理由と活用方法
Search
Yasuhiroki
March 05, 2019
Technology
1
820
ベンチャー企業がCircleCIを選んだ理由と活用方法
第2回CircleCI ユーザーコミュニティミートアップ 発表内容
https://circleci.connpass.com/event/120371/
Yasuhiroki
March 05, 2019
Tweet
Share
More Decks by Yasuhiroki
See All by Yasuhiroki
自分に勉強させるには
yasuhiroki
1
430
Android Studio `Command+Shift+A`
yasuhiroki
0
370
シェルスクリプトをサーバーレスで cron したい
yasuhiroki
1
850
rails new コマンド
yasuhiroki
1
780
自動化を習慣化する
yasuhiroki
2
15k
GitHub Actions Parallel Testing
yasuhiroki
1
1.3k
circleci.vim
yasuhiroki
0
1.7k
Rubyの正規表現を調べてみた
yasuhiroki
0
890
開発者(個人)のためのJenkins 運用編
yasuhiroki
0
2.3k
Other Decks in Technology
See All in Technology
BtoBプロダクト開発の深層
16bitidol
0
350
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
3
320
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
140
実装で解き明かす並行処理の歴史
zozotech
PRO
1
420
データエンジニアがこの先生きのこるには...?
10xinc
0
450
How to achieve interoperable digital identity across Asian countries
fujie
0
120
pprof vs runtime/trace (FlightRecorder)
task4233
0
170
M5製品で作るポン置きセルラー対応カメラ
sayacom
0
160
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
210
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
180
業務自動化プラットフォーム Google Agentspace に入門してみる #devio2025
maroon1st
0
190
Oracle Cloud Infrastructure:2025年9月度サービス・アップデート
oracle4engineer
PRO
0
450
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Building Applications with DynamoDB
mza
96
6.6k
Documentation Writing (for coders)
carmenintech
75
5k
KATA
mclloyd
32
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Designing Experiences People Love
moore
142
24k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Music & Morning Musume
bryan
46
6.8k
Embracing the Ebb and Flow
colly
88
4.8k
Transcript
ϕϯνϟʔاۀ͕ CircleCIΛબΜͩཧ༝ ͱ׆༻ํ๏ A10 Lab Inc. @yasuhiroki
ࣗݾհ
ࣗݾհ Workflow
Yasuhiroki (@duck_yasuhiroki)
CircleCI User Community ӡӦ
͖ͳͷ / ۤखͳͷ
Workflowશମ
ͪΌΜͱ Job ॻ͍ͨΑ
ࣗݾհ ৄࡉ • yasuhiroki (tw: @duck_yasuhiroki) • CircleCI User Community
ӡӦϝϯόʔ • CircleCIྺ 2.0 ͕ग़ͨࠒ͔Β • ͦͷલ Jenkins ͓͡͞Μ
ϕϯνϟʔاۀ͕CircleCIΛ બΜͩཧ༝ͱ׆༻ํ๏
ฐࣾհ • A10 Lab Inc. • 20172݄ʹιχʔ͔Βಠཱ • ࡾओࢭΞϓϦʮΈΜνϟϨʯ
None
ϝϯόʔ 10໊ (ΠϯλʔϯؚΉ)
ΤϯδχΞ 7໊ (ΠϯλʔϯؚΉ)
ΤϯδχΞͷ୲༁ • Android: 3໊ • iOS: 4໊ • API: 3໊
• AWS 2໊
ΤϯδχΞΑΓଟ͍ • Android: 3໊ • iOS: 4໊ • API: 3໊
• AWS 2໊ > 7
ΤϯδχΞΑΓଟ͍ • Android: 3໊ • iOS: 4໊ • API: 3໊
• AWS 2໊ 1ਓN
ଞʹ
͓͍߹Θͤ ɹ=> ରԠ͠·͢ ετΞϨϏϡʔ ɹ=> ରԠ͠·͢ αʔϏε௨ใ ɹ=> ରԠ͠·͢
։ൃ͢Δ࣌ؒݶΒΕ͍ͯΔ
ͦΜͳڥͰ CircleCI Λͳͥબͼ CircleCI ͰԿΛͨ͠ͷ͔
CircleCIΛબΜͩཧ༝
CircleCI ΛબΜͩཧ༝ • ར༻͢ΔαʔϏεΛݮΒ͍ͨ͠
ར༻͢ΔαʔϏεΛݮΒ͍ͨ͠ • ࣾһ͕গͳ͍ͷͰ 1ਓN • Android/iOS/Rails ͳͲԣஅͯ͠୲ • ݶΒΕͨϦιʔεͷதͰΓ͘Γ
Ϧιʔε͕ݶΒΕ͍ͯΔͷͰ • αʔϏεΛ͍ͭ͘͏ͱɺ ֶशίετɾཧίετ ͕૿͑ͯࠔΔ • 1ͭͷαʔϏεʹूͰ͖Δͱخ͍͠
ͦ͜Ͱ CircleCI ΛબͿ • iOS/Android/Rails/AWS ͯ͢ରԠͰ͖Δ
CircleCI ΛબΜͩͷͷ... • iOS/Android/Rails/AWS ͯ͢ରԠͰ͖Δ • ͱɺࢥ͍͕ͬͯͨ...
CircleCI ͷ macOS ϓϥϯ • Linuxͱผྉۚ • ࠷ $39/݄ •
Ϗϧυ੍࣌ؒݶ • ࠷ 500/݄
CircleCI ͷ macOS ϓϥϯ • ຖΨϯΨϯϏϧυ͍ͨ͠ • 500͡ΌΓͳ͍ • ͬ͘͟Γܭࢉ͢Δͱɺ
ɹɹ1Ϗϧυ10 * 10ճ * 20 ɹɹɹɹɹɹɹ => 2000 ཉ͍͠
CircleCI ͷ macOS ϓϥϯ • ্ҐͷϓϥϯͳΒͲ͏͔ • $129/݄ (1800) •
$249/݄ (5000) • ଞͷख͕ͳ͍͔ͳ͊...
None
iOS bitrise ʹͨ͠ • ΫϥΠΞϯτΞϓϦʹ ಛԽ͍ͯ͠ΔͷͰ͔Ώ͍ͱ͜Ζʹख͕ಧ͘ • ຖΨϯΨϯϏϧυͰ͖ΔΑ͏ʹͳͬͨ •
CircleCI ͷΩϡʔ͕ۭ͍ͯྑ͍ • ͏αʔϏε͕૿͑ͨ...
͍ͬͦ bitrise ʹ౷Ұ͢Δʁ • bitrise ΫϥΠΞϯτΞϓϦʹಛԽ • Rails AWS
Λѻ͏ͷͰ͖ͳ͍? Ͱ͖ͨͱͯͦ͠͠͏?
CircleCI & bitrise ମ੍ʹ • CircleCI ʹ౷Ұ͍ͨ͠ؾ࣋ͪ͋Δ • iOSαϙʔτ͕ڧԽ͞ΕΔͱ͍͍ͳ͊
CircleCIͷ׆༻ํ๏
1ਓNͷ՝
ઐ֎ͷྖҬʹ৮ΕΔͷͰ... • ίʔυͷॻ͖ํ͕ͦΕͧΕҧͬͯށ͏ • σϓϩΠɾϦϦʔεํ๏͕Α͔͘Βͳ͍
͖͢͜ͱʹूத͍ͨ͠ • ࣮͢Δػೳʹूத͍ͨ͠ • ༷ɺϩδοΫɺઃܭ ʹूத͍ͨ͠
ࣗಈԽͰ͖Δͱ͜ΖࣗಈԽ • Ϗϧυɺςετͷ֬ೝ => ࣗಈԽ • ίʔυϑΥʔϚοτͷ֬ೝ => ࣗಈԽ •
σϓϩΠɺϦϦʔε࡞ۀ => ࣗಈԽ
Լ४උ
ཧΛ૾ • GitHub Λී௨ʹ͑ྑ͍Έʹ͍ͨ͠ • ಛผͳϧʔϧ࡞Γͨ͘ͳ͍ • ආ͚͍ͨϧʔϧͷྫ • ʮXXϥϕϧ͕͋Δ࣌YY͢Δʯ
• ʮϦϦʔεͨ͘͠ͳ͍࣌ ZZ ͢Δʯ
τϦΨʔ։ൃखॱʹؚΊΔ • ॲཧΛ࣮ߦ͢ΔτϦΨʔҎԼʹݶఆ • GitHubʹϓογϡ • ϓϧϦΫΤετ࡞ • ϓϧϦΫΤετΛϚʔδ •
͜ͷτϦΨʔͰରԠͰ͖ͳ͍͜ͱΒͳ͍ • => ෳࡶͳӡ༻ϧʔϧΛ࡞Βͳ͍
ࣗಈԽ͍͢͠ϒϥϯνߏ • ϒϥϯνߏ୯७ͳํ͕ࣗಈԽ͍͢͠ • ࣍ͷ4छྨʹͳΔΑ͏ϧʔϧΛม͑ͨ • feature • develop •
staging • master
۩ମྫ
feature ͷ Workflow Lint Unit Test
reviewdog ͰࣗಈϨϏϡʔ
featureͷUTܰΊʹ
UTฒྻͰ࣮ߦͰ͖ΔΑ͏ʹ
ΧόϨοδ݁Ռ͕ ׂ͞Ε͍ͯΔͷͰϚʔδ͢Δ
develop ͷ Workflow Unit Test Deploy ϓϧϦΫ࡞
Deploy ։ൃڥʹσϓϩΠ ex) eb deploy
ϓϧϦΫΤετࣗಈ࡞ɾߋ৽
ϓϧϦΫͷλΠτϧ͕ॏཁ ϓϧϦΫΤετͷ λΠτϧ͕ॻ͔Ε͍ͯΔ
ϓϧϦΫͷλΠτϧ͕ॏཁ • ϓϧϦΫͷλΠτϧ == ϦϦʔεͷઆ໌จ • git log ͷ Merge
ίϛοτ͔ΒϓϧϦΫΤετΛಛ ఆ͠ɺͦͷλΠτϧΛऔಘ͍ͯͬͯ͠Δ • Merge ίϛοτ͕ඞཁͳͷͰ git rebase ࣌ҙ • git rebase --preserve-merges ͠ͳ͍ͱ Merge ί ϛοτ͕ফ͑ͯ͠·͏
staging / master develop ͱ΄΅ಉ͡
࡞ͬͨΈͷҰཡ • GitHubʹϓογϡ ɹɹ => Ϗϧυɺςετ • ϓϧϦΫΤετΛ࡞ ɹɹ =>
ίʔυϨϏϡʔ • ϓϧϦΫΤετΛϚʔδ ɹɹ => σϓϩΠɺϓϧϦΫ࡞ɾߋ৽
TODO • Android ͷ PlayετΞ σϓϩΠ • GitHub ͷ Tag
/ Release ͷࣗಈ࡞
(͓·͚) NightlyϏϧυ • CircleCI cronه๏Ͱɺ ࢦఆͨ͠λΠϛϯάͰࣗಈϏϧυͰ͖Δ • ศར
༻ྫ ҰҰճ update gems
·ͱΊ • CircleCI iOS/Android/Rails ͯ͢ΛΧόʔ Ͱ͖Δ ※ୠ͠ iOS ੍ݶ͋Γ
• GitHub Ͱී௨ʹ։ൃ͢Δ͚ͩͰྑ͍ΈΛ ࡞ͬͨ