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
tommykw
September 25, 2020
Programming
2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コネヒトの健全性を支える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.4k
スクラムガイドの理解を深めるためのeduScrumガイド
tommykw
0
1.8k
改めて学ぶContracts
tommykw
10
7.2k
Kotlinの短絡評価について
tommykw
0
500
初めてのKotlinコントリビュート
tommykw
1
750
Kotlin Issueを投げてみよう!
tommykw
0
3.4k
AndroidのタグView作り
tommykw
0
3k
Other Decks in Programming
See All in Programming
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
520
Lessons from Spec-Driven Development
simas
PRO
0
210
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
170
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
140
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
140
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
200
Featured
See All Featured
HDC tutorial
michielstock
2
720
First, design no harm
axbom
PRO
2
1.2k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
970
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
430
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
600
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
610
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 ࢀߟจݙ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͢