Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CircleCIを導入した話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
urmot
January 25, 2019
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CircleCIを導入した話
urmot
January 25, 2019
More Decks by urmot
See All by urmot
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
2k
ログラスを支える設計標準について / loglass-design-standards
urmot
12
3k
ログラスを支える技術的投資の仕組み / loglass-technical-investment
urmot
10
6.3k
実践!CloudFormation Best Practice ~CloudFormationで始める組織改革~
urmot
2
3.6k
SPA on AWS
urmot
0
260
実践!CloudFormation Best Practice
urmot
0
310
RDBのログを取る時にDMSを使うという選択肢
urmot
0
180
ベンチャー企業のインフラを運用して学んだ99のこと
urmot
0
1.4k
Other Decks in Technology
See All in Technology
AWS DevOps Agentはどこまで任せられるか 〜機能の現在地と、機能拡張の実践〜
nyankotaro
0
260
AI時代の開発はウォーターフォールに回帰する? / development-with-ai-back-to-wf
okamototakuyasr2
0
130
Agent × Maestro で始める モバイル E2E 端末準備からテスト実行・結果確認まで
sansantech
PRO
0
220
自宅サーバと脆弱性
masakiokuda
1
120
[re:Invent2026事前勉強会(有志開催)]続きは、ラスベガスの廊下で / continue-in-the-vegas-hallway
sh_fk2
0
320
AIコーディングエージェント開発_全体像
happysamurai294
0
110
LLMの知識とAIエージェント
happysamurai294
0
110
How we choose session proposals
kawaguti
PRO
1
180
国際カードブランドルール変更に伴うクレジットカード決済取引仕様変更について
k1style
0
250
2026-10-24 JAWS JAWS-UG 茨城 #18 IAM Policy Autopilotってなにさ。terraform planからIAM Policyつくれるの? / What's IAM Policy Autopilot
masasuzu
0
180
GitHub、使う?使わない?
happysamurai294
0
100
AWSDirectConnectの構築の進め方を整理してみた
masa_my
1
200
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
420
Unsuck your backbone
ammeep
672
58k
ラッコキーワード サービス紹介資料
rakko
5
5.5M
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
We Have a Design System, Now What?
morganepeng
55
8.4k
The untapped power of vector embeddings
frankvandijk
2
2k
The Limits of Empathy - UXLibs8
cassininazir
2
740
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
610
The Mindset for Success: Future Career Progression
greggifford
PRO
0
550
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
380
Transcript
CircleCIΛಋೖͨ͠ ϝσΟΧϧࣄۀ෦ اը։ൃνʔϜ ଜຊ ༤ଠ
Agenda 1. എܠ) Background 2. ௐࠪ) Study 3. ߏ) Architecture
4. ·ͱΊ) Summary
എܠ
എܠ • ϝσΟΧϧࣄۀ෦ ϦχϡʔΞϧνʔϜ • ։ൃऀ: 1ਓɺΤϯδχΞ: 13ਓ • ׂ͝ͱʹϦϙδτϦΛ͚͍ͯΔ(90ݸ͘Β͍)
• privateͳϥΠϒϥϦɺpackage৴αʔόΛΦϯ ϓϨ্ʹཱͯͯ৴͍ͯ͠Δ(satisαʔό) • ఆظతʹεςʔδϯάʹσϓϩΠ • εςʔδϯάσϓϩΠޙɺςελʔ͞Μ͕ಈ࡞֬ೝ
CIಋೖલͷσϓϩΠϑϩʔ ΤϯδχΞ ऀ ᶃ Create Pull Request ᶅ ఆظతʹdev ->
master ᶄ PRग़ͨ͠Αʔ σϓϩΠαʔό ᶆ ssh Deployer ᶈ deploy ᶇ Run deployment ᶈ Wait deployment ᶉ Finish deployment ᶊ exit ᶋ σϓϩΠ௨ Staging VPC ςελʔ
1. ऀ͕σϓϩΠ͢Δ·ͰεςʔδϯάαʔόͰಈ࡞֬ ೝΛߦ͑ͳ͍ 2. εςʔδϯάαʔόͷσϓϩΠʹऀͷ͕࣌ؒऔΒΕ ͯ͠·͏ 3. σϓϩΠ͢ΔࡍʹɺॳาతͳΤϥʔʹૺ۰͢Δ͜ͱ͕Կ ͔͋Δ
CIπʔϧΛಋೖͯ͠σϓϩΠΛࣗಈԽʂʂ
ௐࠪ
CIπʔϧൺֱ • Jenkins • TravisCI • CircleCI • Wercker •
AWS CodePipeline • etc…
Jenkins • ϝϦοτ • ֦ுੑ͕ߴ͘ɺͳΜͰͰ͖Δ • ΦϯϓϨ্ʹߏங͢ΔͨΊɺIP͕ݻఆ • هࣄ๛ •
σϝϦοτ • αʔόΛ༻ҙ͢Δඞཁ͕͋ΔͨΊอकɾӡ༻͕ඞཁ • ຊ൪ΛؚΊϫʔΫϑϩʔʹΈࠐΉͨΊɺಋೖܭըతʹߦ͏ ඞཁ͕͋Δ • ཧΛଵΔͱJobͷৄࡉ͕࡞ͬͨਓ͔͠Θ͔Βͳ͘ͳͬͯ͠·͏
Jenkins • ϝϦοτ • ֦ுੑ͕ߴ͘ɺͳΜͰͰ͖Δ • ΦϯϓϨ্ʹߏங͢ΔͨΊɺIP͕ݻఆ • هࣄ๛ •
σϝϦοτ • αʔόΛ༻ҙ͢Δඞཁ͕͋ΔͨΊอकɾӡ༻͕ඞཁ • ຊ൪ΛؚΊϫʔΫϑϩʔʹΈࠐΉͨΊɺಋೖܭըతʹߦ͏ ඞཁ͕͋Δ • ཧΛଵΔͱJobͷৄࡉ͕࡞ͬͨਓ͔͠Θ͔Βͳ͘ͳͬͯ͠·͏
TravisCI • ϝϦοτ • CloudͰ͋ΔͨΊɺαʔόͷཧɾӡ༻ෆཁ • GithubͱͷੑߴΊ • هࣄ๛ •
σϝϦοτ • ίϯςφʹsshͰೖΕͳ͍ͷͰσόοά͠ʹ͍͘ • $129͕͔͔ΔͨΊɺCIΛ͡Ίͯಋೖ͢ΔࡍʹఏҊ͠ʹ͍͘ • CloudͳͷͰϏϧυͷʹIP͕มΘΔ
TravisCI • ϝϦοτ • CloudͰ͋ΔͨΊɺαʔόͷཧɾӡ༻ෆཁ • GithubͱͷੑߴΊ • هࣄ๛ •
σϝϦοτ • ίϯςφʹsshͰೖΕͳ͍ͷͰσόοά͠ʹ͍͘ • $129͕͔͔ΔͨΊɺCIΛ͡Ίͯಋೖ͢ΔࡍʹఏҊ͠ʹ͍͘ • CloudͳͷͰϏϧυͷʹIP͕มΘΔ
CircleCI • ϝϦοτ • CloudͰ͋ΔͨΊɺαʔόͷཧɾӡ༻ෆཁ • αϙʔτ͕खް͍ • هࣄ๛ •
sshͰίϯςφʹೖΕΔͷͰɺσόοά͍͢͠ • ແྉͰ͍࢝ΊΒΕΔ • σϝϦοτ • ClouldͳͷͰϏϧυͷʹຖճIP͕มΘΔ
CircleCI • ϝϦοτ • CloudͰ͋ΔͨΊɺαʔόͷཧɾӡ༻ෆཁ • αϙʔτ͕खް͍ • هࣄ๛ •
sshͰίϯςφʹೖΕΔͷͰɺσόοά͍͢͠ • ແྉͰ͍࢝ΊΒΕΔ • σϝϦοτ • ClouldͳͷͰϏϧυͷʹຖճIP͕มΘΔ
ߏ
CircleCIಋೖޙͷσϓϩΠϑϩʔ σϓϩΠαʔό Deployer Staging VPC ςετ & σϓϩΠ ΤϯδχΞ ऀ
ᶃ Create Pull Request ᶅ Merge ᶄ PRग़ͨ͠Αʔ ᶆ CI Build Start ᶋ ௨ ςελʔ ᶇ ᶈ Run Deployer ᶊ Finish Deploy ᶉ deploy
݁Ռ • ऀ͕σϓϩΠʹ࣌ؒΛऔΒΕͳͯ͘ࡁΉΑ͏ʹͳͬ ͨ • σϓϩΠલʹςετΛΒͤΔ͜ͱͰɺখ͍͞όάΛσ ϓϩΠલʹൃݟ͢Δ͜ͱ͕Ͱ͖ΔΑ͏ʹͳͬͨ (CI) • ఆظతʹσϓϩΠ͍ͯͨ͠ͷ͕ɺ1ճͷϚʔδͰܧଓత
ʹසൟʹσϓϩΠͰ͖ΔΑ͏ʹͳͬͨ (CD)
·ͱΊ
͔͑ͨͬͨ͜ͱ • CIͷಋೖͷΑ͏ͳվળ͕·ͩ·ͩ͋Δ • ੵۃతʹఏҊ͢Δ͜ͱͰɺ৽ଔ1ͰղܾͰ͖Δ • ఏҊͯࣗ͠Ͱղܾ͢Δͷ͕͖ͳਓੋඇϨόϨδʔζ ʹདྷ͍ͯͩ͘͞