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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Natsuki Akama
July 09, 2015
Technology
15
5k
日経にCircleCIを導入してみた
「日経電子版×Sansanアプリ開発プロジェクト成功への道〜アプリ開発者勉強会Vol.3」で発表した資料です。
http://connpass.com/event/16885/
Natsuki Akama
July 09, 2015
Tweet
Share
More Decks by Natsuki Akama
See All by Natsuki Akama
エンジニアがプロダクトグロースのためにやったこと
natsuz
1
980
UI設計で最初にやること: 日経電子版アプリ開発で学んだちょっとした知見
natsuz
0
660
日経電子版アプリ内製開発の舞台裏
natsuz
72
30k
Other Decks in Technology
See All in Technology
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
220
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
What happened to RubyGems and what can we learn?
mikemcquaid
0
310
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
680
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
470
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
170
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
190
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
160
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
0
270
Featured
See All Featured
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Test your architecture with Archunit
thirion
1
2.2k
Context Engineering - Making Every Token Count
addyosmani
9
670
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
160
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Fireside Chat
paigeccino
41
3.8k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
120
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Utilizing Notion as your number one productivity tool
mfonobong
3
220
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
79
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Transcript
ܦʹ$JSDMF$*Λಋೖͯ͠Έͨ ɹຊܦࡁ৽ฉࣾɹؒՆथ
͜Μʹͪ ؒՆथ ຊܦࡁ৽ฉࣾɹσδλϧฤہ ৽ଔೖࣾ ܦిࢠ൛ΞϓϦʢJ04ʣΛ։ൃ
ຊܦࡁ৽ฉࣾ ΤϯδχΞ͍·͢ ࣾһʢਓʣʴֶੜΞϧόΠτʢਓʣʴڠྗձࣾ ։ൃ͡Ί·ͨ͠
None
ࠓ͓͢Δ͜ͱ
$JSDMF$*ͰࣗಈԽ͡Ί·ͨ͠ J04ΞϓϦ։ൃΛࣗಈԽͯ͠ɺ։ൃϓϩηεΛվળ͓ͨ͠ ςετ σϦόϦʢϕʔλ৴ʣ
ࣗಈԽͷ͖͔͚ͬ
ΞϓϦͷςετେม ෳ04όʔδϣϯɺෳσόΠε ϦϦʔε͢Δͱݩʹͤͳ͍ Ϋϥογϡ͢Δόά͕͋Δͱɺૉૣ͍ใಓ͕ࠔʹ ➔େྔͷςετέʔεΛ࣮ࢪ
None
J04ܦిࢠ൛ΞϓϦςετέʔεͷ߹ܭɹ ݅
݅✖ 04WFS✖ %FWJDF
खಈσϦόϦେม σβΠφʔɺϕʔλςελʔ ࣗͰϏϧυͰ͖ͳ͍ 9DPEFͷૢ࡞ํ๏͕Θ͔Βͳ͍ɺͦͦ8JOEPXT
खಈσϦόϦେม σβΠφʔɺϕʔλςελʔ ࣗͰϏϧυͰ͖ͳ͍ 9DPEFͷૢ࡞ํ๏͕Θ͔Βͳ͍ɺͦͦ8JOEPXT आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ ɾ
ɾ ɾ
ίϛϡχέʔγϣϯίετ ʮΞϓϦམͪΔΜ͚ͩͲʯ ʮͲ͏͍͏ૢ࡞ํ๏Ͱ͔͢ʁʯ ʮ͜͏ͬͯʜʯ ʮΞϓϦͷόʔδϣϯʁʯ ʮόʔδϣϯͬͯͲ͜Ͱ֬ೝ͢Δͷʁʯ ʮઃఆ͔Β֬ೝͰ͖·͢ʯ ʮ͋ͬ̋̋ͩʯ ʮͦͷόά͏࠷৽൛Ͱͳ͓ͬͯ·͢ʯ
ɹɹʮࣗಈԽ͠·͠ΐ͏ʯ
J04ΞϓϦ։ൃϓϩηεͷࣗಈԽ
*DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN *DPONBEFCZ&MFHBOU5IFNFT GSPNXXXqBUJDPODPN *DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN 2" σϦόϦ ։ൃ
*DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN 2"
ςετͷࣗಈԽ Ϣχοτςετ &&ςετ
Ϣχοτςετॻ͍ͯͨ ,JXJ .PEFMͷΈ ΧόϨοδܭଌͯ͠ͳ͍
·ͣϢχοτςετΛࣗಈԽ
$JSDMF$*ΛͬͯࣗಈԽ ϏϧυεΫϦϓτ͕ࣗ༝ʹॻ͚Δ αϙʔτ͕ૣ͍ɺνϟοτͰ؆୯ʹ࣭Ͱ͖Δ ͍҆
(JUIVCʹ1VTIͨ͠λΠϛϯάͰςετ (JUIVCʹ1VTI͢Δຖʹ֤ϒϥϯνͰςετΛࣗಈ࣮ߦ $JSDMF$*ͰϢχοτςετΛ࣮ߦ YDPEFCVJME νϟοτ௨
YDPEFCVJME YDPVEFCVJMEͰϢχοτςετΛ࣮ߦʢYDUPPM͕σϑΥϧτʣ QPEJOTUBMMࣗಈͰ࣮ߦͯ͘͠ΕΔ
݁Ռνϟοτ௨ 4MBDLʹ௨ͯ͠ɺใΛू CPUͷΞΠίϯΛมߋͯ͠ɺϞνϕʔγϣϯΞοϓ
ςετ݁ՌΛ௨ ςετΛ࣮ߦ
ϢχοτςετͷࣗಈԽඅ༻ରޮՌ͕ߴ͍ ςετΛॻ͍͍ͯΕɺࣗಈԽָ มߋʹର͢Δෆ͕҆؆୯ʹऔΓআ͚Δ ݟ͑ΔԽ *DPONBEFCZ"OUPO4BQVUSP GSPNXXXqBUJDPODPN
&&ςετͷࣗಈԽऔΓΈத
"QQJVNΛͬͨ&&ςετ 4%,ͷΈࠐΈ͕ෆཁ طଘͷίʔυΛ͍͡ΒͣɺςετΛ࣮ߦͰ͖Δ (6*্Ͱૢ࡞ͨ͠ಈ࡞ΛίʔυͰग़ྗ
None
&&ςετͷࣗಈԽ εϞʔΫςετϨϕϧ ϑϩϯτΤϯυͷଟͷྫ֎ॲཧ ϝϯςφϯείετ ਓखʹΑΔςετඞཁ
ςετࣗಈԽʹΑΓ։ൃޮ্͕ खಈςετ͕ͳ͘ͳΔΘ͚Ͱͳ͍ ։ൃͱ2"ͷߴΠςϨʔγϣϯ ·ͱΊͯςετ͢ΔͷͰͳ͘ɺίϛοτຖʹࣗಈςετ ࣗಈςετ͕ࣦഊͨ͠ݪҼલͷίʔυมߋʹ͋Δ ➔ܽؕίʔυͷಛఆͱόάमਖ਼͕ૣ͘ࡁΉ 2"νʔϜʹ͢લʹɺ࠷ݶͷ࣭νΣοΫ
ςετΛࣗಈԽ͢Δͱɺ։ൃɾ2"ͷαΠΫϧ͕͘ͳΔ 2" *DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN *DPONBEFCZ&MFHBOU5IFNFT GSPNXXXqBUJDPODPN *DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN σϦόϦ ։ൃ
ςετࣗಈԽʹΑΔԸܙ 2"νʔϜָ͕Λ͢Δ ͍αΠΫϧͰϦϦʔε͕Ͱ͖Δ
*DPONBEFCZ'SFFQJL GSPNXXXqBUJDPODPN σϦόϦ
'BCSJDΛͬͯϕʔλ৴ J04ͷαϙʔτ ແྉ ΫϥογϡϨϙʔταʔϏε
NBTUFSϒϥϯνͷNFSHF୯ҐͰ ࠷৽ϕʔλ൛ΞϓϦΛৗʹμϯϩʔυՄೳʹ͢Δ $JSDMF$*ͰϢχοτςετΛ࣮ߦ J5VOFT$POOFDUͷόϦσʔγϣϯνΣοΫ ςετ௨աޙʹJ1"Λ࡞͠ɺ'BCSJDͰϕʔλ৴
ϘλϯΛԡ͚ͩ͢Ͱྃ
$JSDMF$*ͰJ1"ϑΝΠϧΛ࡞ 1SPWJTJPOJOH'JMFΛμϯϩʔυ 1SPWJTJPOJOH'JMFɺQϑΝΠϧΛΠϯϙʔτ ΞʔΧΠϒ
1SPWJTJPOJOH'JMFΛ%- OPNBE$-*ͷ$VQFSUJOPΛͬͯϏϧυຖʹ%- ➔%FWJDFΛՃͯ͠ɺ1SPWJTJPOJOHͷखಈมߋͷඞཁͳ͠
None
1SPWJTJPOJOH'JMFQΛΠϯϙʔτ
ύεϫʔυڥมͱͯ͠ઃఆ
YDBSDIJWF͔ΒɺJQBΛ࡞
J5VOFT$POOFDUͷόϦσʔγϣϯνΣοΫ "QQMJDBUJPO-PBEFSͷBMUPPMΛར༻͢Δ BMUPPMͷQBUIΛࢦఆ࣮ͯ͠ߦ
'BCSJDʹΞοϓϩʔυ
ΫϥογϡϨϙʔτΛνϟοτ௨
ςετ݁ՌΛ௨ ࣾ Ϋϥογϡ௨ όϦσʔγϣϯνΣοΫ
σϦόϦࣗಈԽͷϝϦοτ ख࡞ۀ͕શʹͳ͘ͳΔ ϝϯςφϯείετ͕͍ɺ͍ճ͕͠Ͱ͖Δ ॳظಋೖίετ͋·Γߴ͘ͳ͍ ΫϥογϡϨϙʔτʹΑΓɺ։ൃ㲗2"ͷޮ্
ࠓޙ πʔϧΛͬͯਃ·ͰࣗಈԽ ڥґଘɾଐਓੑ ϩʔΧϧͷڥ͕NBTUFSͱҧ͏ ʮ̋̋͞Μ͕ٳՋத͔ͩΒɺਃͰ͖ͳ͍ʯ
"OESPJE "OESPJEܦిࢠ൛ΞϓϦࣗಈԽʹऔΓΈ͡Ί·ͨ͠ $JSDMF$* 3PCPMFDUSJD 'BCSJD
$JSDMF$*5JQT
தͷਓͱϛʔςΟϯά͢Δػձ͕͋ͬͨ ͋Δಥવϝʔϧ͕͖ͨ
ڭ͑ͯΒͬͨ5JQT DJSDMFZNMͷ֬ೝͷͨΊɺຖճ1VTI͢Δͷ͕ຯʹ໘ 1VTI͠ͳͯ͘ɺXFC6*ͰίϚϯυ͕ࢼͤΔ 5FTUDPNNBOET ࢼͨ͠ίϚϯυޙͰফ͞ͳ͍ͱɺॲཧ͕ճΔ
None
·ͱΊ
आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ ɾ ɾ ɾ
आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ आΓͯɺ-JHIUOJOHέʔϒϧͯ͞͠ɺ9DPEFͰϏϧυ ɾ ɾ ɾ ͳ͘ͳͬͨ
ઍ݅ͷखಈςετ
ઍ݅ͷखಈςετ ݅ʹͳΒͳ͍
අ༻ରޮՌͷߴ͍ͷ͔Β͡ΊΔ ͱʹ͔ࣗ͘ಈԽ͖͢ σϦόϦɺʢςετΛॻ͍͍ͯΕʣϢχοτςετ Ͳ͜·ͰࣗಈԽ͢Δ͔ݕ౼͕ඞཁ &&ςετ
ࣗಈԽͷϝϦοτ ୯७ख࡞ۀ͔Βղ์͞ΕͯͤʹͳΕΔ ૉૣ͍։ൃ͕Ͱ͖Δ ૉૣܽؕ͘ίʔυͷಛఆͱόάमਖ਼͕Ͱ͖Δ ݟ͑ΔԽ ➔։ൃ㲗2"ͷαΠΫϧ͕͘ͳΔ
࠷ޙʹ ಋೖਓͰͰ͖Δ ·ͣϘτϜΞοϓͰউखʹಋೖͯ͠ΈΔ ಋೖΑΓӡ༻ͷํ͕େม ϢχοτςετΛॻ͖ଓ͚Δ $*ͷϝϯςφϯε
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ࠷ޙʹͪΐͬͱએ
ΤϯδχΞืूத EH@MBC!OFYOJLLFJDPKQ