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
Natsuki Akama
July 09, 2015
Technology
15
4.9k
日経に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
950
UI設計で最初にやること: 日経電子版アプリ開発で学んだちょっとした知見
natsuz
0
640
日経電子版アプリ内製開発の舞台裏
natsuz
72
29k
Other Decks in Technology
See All in Technology
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
900
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
510
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
1.2k
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
460
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
2.8k
Bedrock で検索エージェントを再現しようとした話
ny7760
2
150
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
290
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
440
エンジニアリングマネージャーの成長の道筋とキャリア / Developers Summit 2025 KANSAI
daiksy
3
1.3k
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
130
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
2
240
Snowflake Intelligence × Document AIで“使いにくいデータ”を“使えるデータ”に
kevinrobot34
1
140
Featured
See All Featured
KATA
mclloyd
32
14k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
We Have a Design System, Now What?
morganepeng
53
7.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
BBQ
matthewcrist
89
9.8k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Navigating Team Friction
lara
189
15k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Agile that works and the tools we love
rasmusluckow
330
21k
Embracing the Ebb and Flow
colly
87
4.8k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
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