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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kaz Watanabe
May 30, 2015
Programming
6k
2
Share
継続的インテグレーションとChatOpsでシステム開発・運用を効率化
Kaz Watanabe
May 30, 2015
More Decks by Kaz Watanabe
See All by Kaz Watanabe
開発エンジニアが取り組む DevSecOps ~ GitHub Enterprise × Azure での実践~
kaz29
0
29
Greenは本当にGreenか? - B/GデプロイとAPI自動テストで安心デプロイ
kaz29
1
190
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
480
開発エンジニアが実践するDevSecOps
kaz29
0
150
PHPCon福岡2024-Azureもなかなかいいですよ.pdf
kaz29
2
350
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.3k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
190
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
710
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.2k
Other Decks in Programming
See All in Programming
継続的な負荷検証を目指して
pyama86
3
1k
Agentic Elixir
whatyouhide
0
450
PHPでローカル環境用のSSL/TLS証明書を発行することはできるのか? #phpconkagawa
akase244
0
350
書き換えて学ぶTemporal #fukts
pirosikick
2
370
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
1k
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
780
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
250
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
3k
Agent Skills を社内で育てる仕組み作り
jackchuka
1
1.8k
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
770
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.9k
Building on Bluesky's AT Protocol with Ruby
mackuba
0
110
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
280
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
180
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
230
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
290
The World Runs on Bad Software
bkeepers
PRO
72
12k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
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ʙαΠϯձ͋ΔΑ(><)