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
コネヒトの健全性を支えるGithub Actionsの事例紹介
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
tommykw
September 25, 2020
Programming
2k
0
Share
コネヒトの健全性を支えるGithub Actionsの事例紹介
tommykw
September 25, 2020
More Decks by tommykw
See All by tommykw
ポートフォリオを作る
tommykw
0
170
Kotlin Compiler Plugin 入門
tommykw
0
110
Kotlin Compiler Plugin のワークフローを知る
tommykw
1
2.3k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.7k
改めて学ぶContracts
tommykw
10
7.1k
Kotlinの短絡評価について
tommykw
0
500
初めてのKotlinコントリビュート
tommykw
1
740
Kotlin Issueを投げてみよう!
tommykw
0
3.4k
AndroidのタグView作り
tommykw
0
3k
Other Decks in Programming
See All in Programming
Swiftのレキシカルスコープ管理
kntkymt
0
200
Moments When Things Go Wrong
aurimas
3
120
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
290
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.1k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
170
GitHub Copilot CLIのいいところ
htkym
2
1.2k
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
300
AI Agent と正しく分析するための環境作り
yoshyum
3
640
AI 時代のソフトウェア設計の学び方
masuda220
PRO
28
11k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
350
Inside Stream API
skrb
1
360
Oxlintのカスタムルールの現況
syumai
5
890
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
290
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
590
Being A Developer After 40
akosma
91
590k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
340
Exploring anti-patterns in Rails
aemeredith
3
380
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
810
Automating Front-end Workflow
addyosmani
1370
210k
Building Applications with DynamoDB
mza
96
7.1k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Documentation Writing (for coders)
carmenintech
77
5.4k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
How to build a perfect <img>
jonoalderson
1
5.5k
Transcript
$POOFIJUP*ODా݈ೋ ίωώτϚϧγΣΦϯϥΠϯʮࣄۀΛࢧ͑Δ8FC։ൃʯWPM ϚϚͷҰาΛࢧ͑Δ ίωώτͷ݈શੑΛࢧ͑Δ (JUIVC"DUJPOTͷࣄྫհ
!UPNNZLX ా݈ೋ ίωώτ"OESPJEΤϯδχΞ
ΞδΣϯμ 1. ίωώτͷ݈શੑͱʁ 2. Github ActionsͰࣗಈԽ 3. Github Actionsͷόʔδϣχϯά
4. ·ͱΊ
ίωώτͷ݈શੑͱʁ
• ։ൃޮ্͕͕Δ͜ͱͰɺίωώτͷαʔ ϏεΛͬͯ͘ΕΔϢʔβʔૉૣ͘Ձ Λఏڙ͢Δ • ։ൃνʔϜʹ͓͚Δ݈શੑΛࣔ͢ • 2020 1QͰఆٛ͠ɺ2Q͔ΒվળΛճͯ͠
͍Δ ίωώτͷ݈શੑͱʁ
݈શੑͲΜͳࢦඪʁ
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ IssueΛదͳαΠζʹׂ͢ΔͨΊʹ ετʔϦʔϙΠϯτͷେ͖͞Λݟͯஅ
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ PR͕์ஔ͞Εͳ͍Α͏ϨϏϡʔ։࢝·Ͱ ʹͲΕ͘Β͍͔͔͍ͬͯΔ͔ΛτϥοΩϯ ά
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ PR͕Ϋϩʔζ͞ΕΔ·ͰΛτϥοΩϯά ͠ΓऔΓʹԆ͕ੜ͍ͯ͡ͳ͍͔νΣο Ϋ
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ
• λεΫணख ʙ ྃͷฏۉΛ2.4Ҏ • ϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬͨ PR͕90%Ҏ্ • PRͷੜଘظؒͷฏۉ͕1.4ҎԼ
݈શੑͲΜͳࢦඪʁ ʮϨϏϡʔ։࢝·ͰΛӦۀҎ ʹߦͬͨ13͕Ҏ্ʯΛ (JUIVC"DUJPOTͰվળͯ͠ΈΔ
(JUIVC"DUJPOTͰࣗಈԽ
• ʮϨϏϡʔ։࢝·ͰΛ1ӦۀҎʹߦͬ ͨ PR͕90%Ҏ্ʯΛୡ͍ͨ͠ • ʮҰͨͬͯϨϏϡʔ։࢝ͯ͠ͳ͍ͱ͖ ʹϨϏϡϫʔʹϝϯγϣϯΛૹΔʯʹλ εΫղͰ͖Δ •
Github scheduled remindersͰ্هͷΑ͏ ͳࡉ͔͍νϡʔχϯάͦ͠͏ Github Team ϦϚΠϯμʔΛ͏ͱ࠷খͷܦա࣌ ؒΛઃఆͰ͖Δ (JUIVC"DUJPOTͰΓ͍ͨ͜ͱ
• https://github.com/ marketplace/actions/ pull-request-reviewer- reminder-action • PRͷreviewersΛࢦఆ͠ ͔ͯΒઃఆͨ࣌ؒ͠· ͰʹϨϏϡʔ͞Ε͔ͨ
νΣοΫ͢Δ (JUIVC"DUJPOTΛ࡞ͬͨ
• .github/workflows/pull-request-reviewer- reminder.yml ͷΑ͏ͳϑΝΠϧΛ࡞͢Δ • ඞཁʹԠͯ͡ύϥϝʔλΛௐ͢Δ ͍ํ
௨༰
ಋೖͨ݁͠Ռʁ
• ࣮ಋೖͯ͠·ͩҰि͔ؒ͠ܦ͍ͬͯͳ͍ ͷͰޮՌ͕Θ͔͍ͬͯͳ͍ • ͨͩɺ௨ʹΑͬͯPRϨϏϡʔʹؾͮ͘ ໘͕૿͑ͨ • ֤ϦϙδτϦʹಋೖ͢Δඞཁ͕͋ΔͷͰ खؒ
• ࣗ࡞Github ActionsΛ࡞Δ্Ͱಠಛͳόʔ δϣϯཧ͕͋Δ ಋೖͨ݁͠Ռ
• ࣮ಋೖͯ͠·ͩҰि͔ؒ͠ܦ͍ͬͯͳ͍ ͷͰޮՌ͕Θ͔͍ͬͯͳ͍ • ͨͩɺhogehoge͞Ε͍ͯΔ • ֤ϦϙδτϦʹಋೖ͢Δඞཁ͕͋ΔͷͰ खؒ •
ࣗ࡞Github ActionsΛ࡞Δ্Ͱಠಛͳόʔ δϣϯཧΛͬͨ ಋೖͨ݁͠Ռ ͲΜͳόʔδϣϯཧ ͳΜͩΖ͏ʁ
(JUIVC"DUJPOTͷ όʔδϣχϯά
• Github MarketplaceͰGitHub ActionΛݟͯ Δͱɺv1v1.x.xͱ͍ͬͨόʔδϣϯ͕͋ Δ • ެࣜυΩϡϝϯτͰɺv1Λϝδϟʔόʔ δϣϯ͕͓͢͢Ί͞Ε͍ͯΔ
• ϝδϟʔόʔδϣϯɺޓੑΛอ্ͬͨ Ͱɺόάमਖ਼ػೳՃηΩϡϦςΟम ਖ਼Λར༻Ͱ͖Δ (JUIVC"DUJPOTͷόʔδϣ χϯά
࡞Δଆͱ͏ଆͷҙ
• ϝδϟʔόʔδϣϯ͕v1ͱͳΔΑ͏ʹ͢Δ • ϚΠφʔόʔδϣϯͳͲΛ࡞ΔͱɺλάΛ ͚ସ͑Δඞཁ͕͋Δ • https://github.com/nowactions/update- majorver Λ͏ͱࣗಈͰϝδϟʔόʔ
δϣϯΛߋ৽ͯ͘͠ΕΔ (JUIVC"DUJPOTΛ࡞Δଆ
• .github/workflows/ ҎԼʹԼهΛ࡞͢Δ VQEBUFNBKPSWFSͷ͍ํ
• ϝδϟʔόʔδϣϯ v1ͱϚΠφʔόʔδϣ ϯv1.x.x͕ඥ͍͍ͮͯΔ͜ͱΛ֬ೝ͢Δ (JUIVC"DUJPOTΛ͏ଆ
·ͱΊ
• ݱঢ়ͷίωώτͷ݈શੑʹ͍ͭͯհ͠ ͨ • PRʹؔ͢Δࢦඪ͕ଟ͔ͬͨͷͰɺGithub ActionsΛͬͯҰ෦վળͨ͠ • Github ActionsΛར༻ɺ࡞͢Δͱ͖
όʔδϣχϯάΛҙࣝ͠Α͏ ·ͱΊ
• ࣗ࡞Github ActionsΛެ։͢Δͱ͖ͷλά ͚ • https://qiita.com/yanamura/items/ a9c112f0fc2ae7ce27ac • Team
ͷεέδϡʔϧ͞ΕͨϦϚΠϯμʔ Λཧ͢Δ • https://docs.github.com/ja/github/setting- up-and-managing-organizations-and- teams/managing-scheduled-reminders- for-your-team ࢀߟจݙ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͢