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
継続的インテグレーションとChatOpsでシステム開発・運用を効率化
Search
Kaz Watanabe
May 30, 2015
Programming
2
5.8k
継続的インテグレーションとChatOpsでシステム開発・運用を効率化
Kaz Watanabe
May 30, 2015
Tweet
Share
More Decks by Kaz Watanabe
See All by Kaz Watanabe
開発エンジニアが実践するDevSecOps
kaz29
0
80
PHPCon福岡2024-Azureもなかなかいいですよ.pdf
kaz29
2
200
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.1k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
150
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
640
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.1k
201909-PHPCon北海道-PHPでCI_CD.pdf
kaz29
0
3.7k
2019/02/27 PHP勉強会 #135 PHPでCI・CD
kaz29
0
330
PHPでもserverless framework!?
kaz29
2
3.3k
Other Decks in Programming
See All in Programming
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
110
インターフェース設計のコツとツボ
togishima
2
370
Duke on CRaC with Jakarta EE
ivargrimstad
1
610
REST API設計の実践 – ベストプラクティスとその落とし穴
kentaroutakeda
2
260
Parallel::Pipesの紹介
skaji
2
540
技術的負債と戦略的に戦わざるを得ない場合のオブザーバビリティ活用術 / Leveraging Observability When Strategically Dealing with Technical Debt
yoshiyoshifujii
0
160
クラシルリワードにおける iOSアプリ開発の取り組み
funzin
1
750
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
350
OpenNext + Hono on Cloudflare でイマドキWeb開発スタックを実現する
rokuosan
0
100
Practical Domain-Driven Design - Workshop at NDC 2025
mufrid
0
120
tsconfigのオプションで変わる型世界
keisukeikeda
1
120
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
740
Featured
See All Featured
Making Projects Easy
brettharned
116
6.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
123
52k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Scaling GitHub
holman
459
140k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
RailsConf 2023
tenderlove
30
1.1k
Gamification - CAS2011
davidbonilla
81
5.3k
How STYLIGHT went responsive
nonsquared
100
5.6k
For a Future-Friendly Web
brad_frost
178
9.7k
Faster Mobile Websites
deanohume
307
31k
Transcript
ܧଓతΠϯςάϨʔγϣϯͱChatOpsͰ γεςϜ։ൃɾӡ༻ΛՄࢹԽ ߹ಉձࣾ decr දࣾһ ลҰ(@kaz_29)
WHO? ߹ಉձࣾ decr දࣾһ WebΞϓϦέʔγϣϯͷ։ൃɺ iOSΞϓϦέʔγϣϯͷ։ൃɺ ΫϥυΠϯϑϥͷߏஙɾӡ༻
ιϑτΣΞ։ൃʹٻΊΒΕ͍ͯ Δͷ ͍ϦϦʔεαΠΫϧ ಈ͘ιϑτΣΞͷڙڅ ՄೳͳݶΓແବΛഉআ νʔϜͷԁͳίϛϡχέʔγϣϯ͕ॏཁ ࣗಈԽՄೳͳͷશͯࣗಈԽ͢Δ
ܧଓతΠϯςάϨʔγϣϯ Continuous Integration = CI
“ܧଓతΠϯςάϨʔγϣϯɺCIʢӳ: continuous integrationʣͱɺओʹϓϩάϥϚʔͷΞϓϦ έʔγϣϯ࡞࣌ͷ࣭վળೲظͷॖͷͨΊ ͷश׳ͷ͜ͱͰ͋ΔɻΤΫετϦʔϜɾϓϩάϥ ϛϯά (XP) ͷϓϥΫςΟεͷҰͭͰɺڱٛʹϏ ϧυςετɺΠϯεϖΫγϣϯͳͲΛܧଓతʹ ࣮ߦ͍ͯ͘͜͠ͱΛҙຯ͢Δɻ”
– Wikipedia
Ή͔͍ͣ͠…
ܧଓతΠϯςάϨʔγϣϯ ඞਢ݅
ܧଓతΠϯςάϨʔγϣϯ ඞਢ݅ - VCS όʔδϣϯཧγεςϜ(VCS)ͷಋೖඞਢʂ ෳͷόʔδϣϯΛखಈͰཧ͢Δ͜ͱෆՄೳ git/mercurialͳͲͷࢄܕ͕͓͢͢Ί GitHub/BitbucketͳͲͷαʔϏεΛར༻͢Δ͜ͱͰཧ ίετΛݮ
ܧଓతΠϯςάϨʔγϣϯ ඞਢ݅ - CIπʔϧ ܧଓతΠϯςάϨʔγϣϯπʔϧ αʔόʔΠϯετʔϧܕ SaaSܕ …
ܧଓతΠϯςάϨʔγϣϯ ඞਢ݅ - ςετʂ ࣗಈԽ͞Εͨςετ UnitTest ίʔυΧόϨοδ डೖςετ Selenium behat(BDD
Story Test) - http://behat.org Codeception - http://codeception.com/
ܧଓతΠϯςάϨʔγϣϯ ඞਢ݅ - ௨ Λൃݟͨ͠Β͙͢ʹΒͤΔ ΤϯδχΞ͚ͩͰͳ͘νʔϜશһʹΒͤΔ ͋Δछͷۓுײ͕ੜ·ΕΔ? ͙͢ʹؾͮ͘ɺݟམͱ͞Εͳ͍ϝσΟΞͰ͑Δ ࠷༏ઌͰରԠʂ
ܧଓతΠϯςάϨʔγϣϯ ಘΒΕΔϝϦοτ
ܧଓతΠϯςάϨʔγϣϯ ಘΒΕΔϝϦοτ ଐਓੑɺґଘͷഉআ ͍ͭͰ ୭Ͱ ؆୯ͳखॱͰ ࣮ߦͰ͖Δ
ܧଓతΠϯςάϨʔγϣϯ ಘΒΕΔϝϦοτ ϓϩδΣΫτ։࢝ॳ͔Β܁Γฦ࣮͠ߦ ϏϧυΛࣗಈ࣮ߦ ຖఆ࣮࣌ߦ ιϑτΣΞʹमਖ਼͕ೖΔͨͼ Λૉૣ͘ ൃݟͰ͖Δ
ܧଓతΠϯςάϨʔγϣϯ ಘΒΕΔϝϦοτ मਖ਼ίετ ཁٻఆٛ ઃܭ ։ൃ୯ମςετ ݁߹ςετ ϕʔλςετ ެ։ޙ मਖ਼ʹ͔͔Δίετ
ૣ͘ݟ͚ͭͯ ૉૣ͘͢ʂ
ܧଓతΠϯςάϨʔγϣϯ ಘΒΕΔϝϦοτ ϓϩδΣΫτͷ ঢ়ଶΛѲͰ͖Δ
ChatOpsͱʁ
ChatOpsͱʁ νϟοτ্ͰίϚϯυΛೖྗ͠λεΫΛ࣮ߦ ιϑτΣΞͷσϓϩΠɺϏϧυͷ࣮ߦɺ λΠϜΧʔυͷଧࠁ…etc ιϑτΣΞ։ൃதͷ༷ʑͳঢ়ଶɾใΛνϟοτ ্ͰՄࢹԽ ίʔυͷCommitɺϏϧυ݁Ռɺࢹ݁ՌɺΤ ϥʔ༰…etc
ChatOps ಘΒΕΔϝϦοτ
ChatOps ಘΒΕΔϝϦοτ ࠓԿ͕ى͖͍ͯΔ͔ΛνʔϜશһ͕ѲͰ͖Δ ใૢ࡞ΛҰՕॴʹूͰ͖Δ ൃੜ͍ͯ͠Δ͜ͱʹؔ͢ΔٞΛͦͷ··ਐΊΒΕΔ ϞόΠϧͰར༻Ͱ͖Δ
ܧଓతΠϯςάϨʔγϣϯ+ChatOps ฐࣾͰͷࣄྫ
CI+ChatOps ฐࣾͰͷࣄྫ http://mega-hon.com/
CI+ChatOps ฐࣾͰͷࣄྫ VCS crash report ϓϩϏδϣχϯά σϓϩΠ λεΫ/ετʔϦͷཧ CI ΞϓϦ
νϟοτγεςϜ ։ൃڥ εςʔδϯά/ϓϩμΫγϣϯڥ I love Ubuntu
CI+ChatOps ฐࣾͰͷࣄྫ - ։ൃڥ ։ൃڥ εςʔδϯά/ϓϩμΫγϣϯڥ ϓϩϏδϣχϯά
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ ίʔυΛίϛοτ [finish #ετʔϦʔ൪߸] ίϛοτΛ௨ ετʔϦΛด͡Δ ετʔϦʹίϝϯτΛ͚ͭΔ
ετʔϦͷ ঢ়ଶΛ௨
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ PRΛ࡞ PRΛ௨ PRΛ௨ ϏϧυΛࣗಈ࣮ߦ ςετ։࢝/݁ՌΛίϝϯτ ςετ݁ՌΛ
௨
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ
CI+ChatOps ฐࣾͰͷࣄྫ - ࡞ۀͷྲྀΕ
CI+ChatOps ฐࣾͰͷࣄྫ - σϓϩΠ chat γεςϜ ίϚϯυೖྗ @megahon-bot deploy to
staging σϓϩΠ݁Ռ HuBot ίϚϯυड৴ σϓϩΠॲཧىಈ
CI+ChatOps ฐࣾͰͷࣄྫ - σϓϩΠ
CI+ChatOps ฐࣾͰͷࣄྫ - ΞϓϦͷঢ়ଶ௨ chat γεςϜ ΞϓϦͷঢ়ଶ
CI+ChatOps ฐࣾͰͷࣄྫ - ΞϓϦͷঢ়ଶ௨
CI+ChatOps ฐࣾͰͷࣄྫ - ͦͷଞ chat γεςϜ ΫϥογϡϨϙʔτ
CI+ChatOps ฐࣾͰͷࣄྫ - ͦͷଞ
·ͱΊ
CI + ChatOps Λૉૣ͘ൃݟ ϓϩδΣΫτͷঢ়ଶΛՄࢹԽ νʔϜͷίϛϡχέʔγϣϯͷԁԽ
ϩʔϚ̍ʹ ͯ͠Βͣ
$* $IBU0QTͰ ҆৺ͯ͠εϐʔσΟʔʹ ։ൃΛਐΊ·͠ΐ͏ʂ Fin
͓·͚ ॻళϒʔεͰ ઈࢍൢചதʂ 13:30ʙαΠϯձ͋ΔΑ(><)