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
コネヒトの健全性を支える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
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
670
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.7k
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
310
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
220
AI Agent と正しく分析するための環境作り
yoshyum
3
640
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
390
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.3k
ふつうのFeature Flag実践入門
irof
7
3.3k
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
h0r15h0
1
140
デフォルト運用のCodeRabbit、1年で何が変わったか / How CodeRabbit Changed Our Code Review in 1 Year
bake0937
1
110
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
120
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.3k
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Mind Mapping
helmedeiros
PRO
1
210
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
Bash Introduction
62gerente
615
210k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
300
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
590
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.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 ࢀߟจݙ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͢