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
CI/CDツール比較してみた
Search
Kai Shoya
July 12, 2019
Programming
2.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CI/CDツール比較してみた
大手Gitホスティングサービス3社でよく使われているCI/CDツール、Bitbucket Pipelines, GitLab CI/CD, CircleCIを比較してみました。
Kai Shoya
July 12, 2019
Other Decks in Programming
See All in Programming
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
240
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
510
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
8
3.4k
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
140
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
720
霧の中の代数的エフェクト
funnyycat
1
430
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
180
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
910
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
440
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
560
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
470
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
KATA
mclloyd
PRO
35
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Design in an AI World
tapps
1
270
Designing Experiences People Love
moore
143
24k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.1k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
It's Worth the Effort
3n
188
29k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
810
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Transcript
CI/CDπʔϧൺֱͯ͠Έͨ
ࣗݾհ גࣜձࣾϥϯόʔϛϧ ߕ൹ᠳɹ@shonari123 ܦྺ • [ઐֶߍ]ϠΫβͷΑ͏ͳԸࢣʹγΰ͔ΕΔ • [ब৬]”ྑ͍”اۀʹब৬͢Δ͕ϲ݄ͰࣙΊͯχʔτ • [࠶ब৬]ࠓͷձࣾʹब৬
࠷ۙ͏ٕज़ • Java, PHP, MySQL, Vue.js, Firebase
CI/CDͬͯͳʹʁ
CI/CDͱ ʮCIʯͱʮContinuous IntegrationʢܧଓతΠϯςάϨʔγϣϯʣʯͷུͰɺιϑ τΣΞ։ൃʹ͓͚ΔϏϧυςετΛࣗಈԽ͠ɺܧଓతʹߦ͏Ξϓϩʔνͷ͜ͱ Ͱ͢ɻ ʮCDʯͱʮContinuous DeliveryʢܧଓతσϦόϦʔʣʯͷུͰɺCIʹΑͬͯςε τ͞ΕͨίʔυͷϚʔδɺຊ൪ڥ͚ͷϏϧυͷ࡞Λࣗಈతʹߦ͍ɺຊ൪ ڥʹσϓϩΠ͕Մೳͳঢ়ଶΛ͑Δϓϩηεͷ͜ͱͰ͢ɻ ·ͨʮCDʯʮContinuous
DeploymentʢܧଓతσϓϩΠʣʯͷུͱͯ͠ΘΕΔ ͜ͱ͋Γ·͢ɻܧଓతσϓϩΠܧଓతσϦόϦʔͱΑ͘ࣅͨ֓೦Ͱ͕͢ɺܧଓ తσϦόϦʔ͕σϓϩΠՄೳͳঢ়ଶΛ४උ͢Δ͚ͩͳͷʹର͠ɺܧଓతσϓϩΠ ࣮ࡍʹຊ൪ڥͷσϓϩΠ·ͰΛߦ͏͕ҟͳΓ·͢ɻ ͜ͷΑ͏ͳϏϧυɺςετɺσϓϩΠΛࣗಈԽ͠ɺܧଓతʹߦ͏ख๏ͷ͜ͱΛɺ͋ ΘͤͯʮCI/CDʯͱݺͼ·͢ɻ χϑΫϥʰʮCI/CDʯͱʱ(https://pfs.nifcloud.com/navi/words/ci_cd.htm : 2019/07/04)
CI/CDͱ CI: ςετϏϧυΛࣗಈͰߦ͏͜ͱ CD: CI͕OKͩͬͨΒࣗಈͰσϓϩΠ ͢Δ͜ͱ
GitϗεςΟϯάαʔϏε Push Pull Request CI/CDπʔϧ Push, Pull RequestΛݕ ςετɾϏϧυΛ࣮ߦ ςετɾϏϧυ͕
௨ͬͨΒσϓϩΠ
CI/CDͷྲྀΕ Init Test Build Deploy checkoutͨ͠Γ yarn installͨ͠Γ ςετͱϏϧυΛฒྻʹ࣮ߦ masterϒϥϯνͷ࣌ͷΈ
શ෦௨ͬͨΒσϓϩΠ
ൺֱ͢ΔCI/CDπʔϧ •Bitbucket Pipelines •GitLab CI/CD •Circle CI
Bitbucket Pipelines
feature/cicd master develop merge checkout pull request pull request commit
merge ͚ͩ͜͜ νΣοΫ͢Δ CI/CD͢ΔՕॴ
ઃఆ ʮEnable PipelinesʯΛOnʹ͢Δ ϓϩδΣΫτͷϧʔτσΟϨΫτϦʹ ʮbitbucket-pipelines.ymlʯΛ࡞
yml
yml ڥม Docker Image UnitςετͱBuildΛ ฒྻʹ࣮ߦ node_modules/Λ શମͰڞ༗ લճ࣮ߦͨ࣌͠ͷ node_modules/Λίϐʔ
શͯͷpull requestͰ initͱciΛ࣮ߦ cachesΛར༻͢ΔͨΊ ϩʔΧϧʹอଘ
ߏจνΣοΫ
ޭ
ࣦഊ
ίϛοτҰཡ
GitLab CI/CD
feature/cicd master develop merge checkout pull request pull request commit
merge ͚ͩ͜͜ νΣοΫ͢Δ CI/CD͢ΔՕॴ
ઃఆ ϓϩδΣΫτͷϧʔτσΟϨΫτϦʹ ʮ.gitlab-ci.ymlʯΛ࡞
yml
yml Job Jobͷ࣮ߦॱ stage͕ಉ໊͡લ ͩͬͨΒฒྻʹॲཧ masterͱϓϧϦΫ࣌ͷΈ ࣮ߦ Docker Image ڥม
node_modules/ͱdist/Λ શମͰڞ༗ લճ࣮ߦͨ࣌͠ͷ node_modules/Λίϐʔ
ߏจνΣοΫ
ޭ
ࣦഊ
ίϛοτҰཡ
Circle CI
feature/cicd master develop merge checkout pull request pull request commit
merge ͚ͩ͜͜ νΣοΫ͢Δ CI/CD͢ΔՕॴ
feature/cicd master develop merge checkout pull request pull request commit
merge ͚ͩ͜͜ νΣοΫ͢Δ CI/CD͢ΔՕॴ
ઃఆ Circle CIʹαΠϯΠϯ(αΠϯΞοϓ)͠Github/ BitbucketΞΧϯτͱ࿈ܞ͢Δ ϓϩδΣΫτʹʮ.circleci/config.ymlʯΛ࡞
None
yml
yml Docker Image ڥม node_modules/Λอଘ લճอଘͨ͠ node_modules/ಡΈࠐΈ ΧϨϯτσΟϨΫτϦΛڞ༗ ڞ༗͞ΕͨσΟϨΫτϦΛΞλον dist/Λڞ༗
master͚ͩ Ͱ࣮ߦ ྃΛͭjobΛࢦఆ ಉ͡jobΛࢦఆ͢Δͱ ฒྻʹͳΔ
ߏจνΣοΫ
ޭ
ࣦഊ
ίϛοτҰཡ
Bitbucket Pipelines GitLab CI/CD Circle CI υΩϡϝϯτ ຊޠ͋Γ ͍͠ ӳޠͷΈ
༏͍͠ ຊޠ͋Γ ͍͠ ίϯςφ ແྉ ແ੍ݶʁ ແ੍ݶʁ 1 OSSͷ߹: 4 Ϗϧυ࣌ؒ/݄ ແྉ 50/݄ 2,000/݄ 1,000/݄ Ωϟογϡ ͋Γ ͋Γ ༗ྉ Ϗϧυʹ͔͔ͬͨ࣌ؒ 2 530ඵ 3 ߏจνΣοΫ Validator Θ͔ΓͣΒ͍ CI Lint Θ͔Γ͍͢ circleciίϚϯυ Θ͔Γ͍͢ ൺֱ
·ͱΊ • Bitbucket Pipelines • !Ϗϧυ͕Ұ൪ૣ͍ • "Ϗϧυ࣌ؒ/݄͕͍ʢελϯμʔυϓϥϯ: 500/݄ʣ •
Gitlab CI • !υΩϡϝϯτ͕Θ͔Γ͘͢ɺϏϧυ࣌ؒ/݄͕Ұ൪ଟ͍ • "αʔόʔͷࠞΈ۩߹͕͔ͳΓӨڹ͢Δʢૣ͍࣌3ऑʣ • Circle CI • !ߏจνΣοΫҰ൪Θ͔Γ͍͢ • "filtersʹPull RequestΛࢦఆͰ͖ͳ͍
ymlΛGithubʹͯެ։தʂ https://github.com/KaiShoya/CICD-Examples