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
モノレポのプルリクエストに最近、導入したもの
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hiroyuki Kusu
June 03, 2024
Technology
2
570
モノレポのプルリクエストに最近、導入したもの
YUMEMI.grow (
https://yumemi.connpass.com/event/318110/
) の資料
Hiroyuki Kusu
June 03, 2024
Tweet
Share
More Decks by Hiroyuki Kusu
See All by Hiroyuki Kusu
GitHub composite actions
hkusu
2
420
Android の静的解析における SARIF ファイルの活用
hkusu
0
5.4k
CI_でライブラリのバージョンの変化をレポートする.pdf
hkusu
0
400
Maestro を GitHub Actions で動かす 〜Android編〜
hkusu
1
1.7k
Android の CI(GitHub Actions)の改善で、最近やったこと
hkusu
0
710
Tauri Mobile で生成される Android のコードを見てみる
hkusu
0
1.5k
Custom GitHub Actions を作って Organization 内で共有する
hkusu
1
580
GitHub Actions でユニットテストの結果をレポートする
hkusu
0
3.8k
Android で Multiplatform Settings を使う
hkusu
0
1.1k
Other Decks in Technology
See All in Technology
GitHub Copilot CLI で Azure Portal to Bicep
tsubakimoto_s
0
190
韓非子に学ぶAI活用術
tomfook
2
610
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
290
Astro Islandsの 内部実装を 「日本で一番わかりやすく」 ざっくり解説!
knj
1
280
Phase12_総括_自走化
overflowinc
0
1.5k
MCPで決済に楽にする
mu7889yoon
0
110
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
qa
0
280
AIエージェント×GitHubで実現するQAナレッジの資産化と業務活用 / QA Knowledge as Assets with AI Agents & GitHub
tknw_hitsuji
0
230
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
SaaSに宿る21g
kanyamaguc
2
160
VSCode中心だった自分がターミナル沼に入門した話
sanogemaru
0
610
【社内勉強会】新年度からコーディングエージェントを使いこなす - 構造と制約で引き出すClaude Codeの実践知
nwiizo
24
12k
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
160
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
210
Darren the Foodie - Storyboard
khoart
PRO
3
3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
160
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
240
Deep Space Network (abreviated)
tonyrice
0
96
Faster Mobile Websites
deanohume
310
31k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
170
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
500
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
Transcript
ϞϊϨϙͷϓϧϦΫΤετʹ ࠷ۙɺಋೖͨ͠ͷ 2024.6.3 YUMEMI.grow ϓϧϦΫΤετͱίʔυϨϏϡʔͰ։ൃΛՃͤ͞ΔLTձ Hiroyuki Kusu ( @hkusu_ )
About me
લఏɿ͜ͷεϥΠυͰͷϞϊϨϙͷఆٛ • 1ͭͷϦϙδτϦʹෳͷαϒγεςϜͷίʔυ͕ଘࡏ • গͳ͘ͱ͜ͷεϥΠυͰ͜ͷΑ͏ʹఆٛ • γϯϓϧʹαϒγεςϜຖʹσΟϨΫτϦ͕ผͱ͠·͢
1. ࣗಈͰϨϏϡΞΛઃఆ
/server @server-team /front @front-team ... 1. ࣗಈͰϨϏϡΞΛઃఆ .github/CODEOWNERS
2. ඞཁͳαϒγεςϜͷΈ࣮ߦ
- uses: yumemi-inc/path-filter@v2 with: patterns: | front/** !front/doc/** run: |
cd front/ npm run test 2. ඞཁͳαϒγεςϜͷΈ࣮ߦ ྫɿϓϧϦΫͰ front/ Լͷίʔυ͕มߋ͞Ε͍ͯΔ߹ͷΈςετΛ࣮ߦ ※ ϫʔΫϑϩʔؙ͝ͱ࣮ߦ͢Δ/͠ͳ͍ͷ੍ޚͰΑ͍߹ϫʔΫϑϩʔͷτϦΨʔ݅ͷ paths ͰΑ͍Ͱ͢
2. ඞཁͳαϒγεςϜͷΈ࣮ߦ https://github.com/marketplace/actions/path- fi lter ར༻͍ͯ͠Δ actionɿ
2. ඞཁͳαϒγεςϜͷΈ࣮ߦ • ͕͔͔࣌ؒΔςετϏϧυΛεϧʔ͢ΔͷʹޮՌత • ෆཁͳσϓϩΠࢭ͢Δ͜ͱ͕ग़དྷΔ
3. ࣗಈͰϓϧϦΫʹϥϕϧΛ༩
3. ࣗಈͰϓϧϦΫʹϥϕϧΛ༩ • ͲͷαϒγεςϜͷϓϧϦΫͳͷ͔ͷϥϕϧ͕͍͍ͭͯΔͱ͔Γ͍͢ • ͨͩखಈͰϥϕϧΛ༩͢Δͷ໘ͩ͠ɺؒҧ͑ΔՄೳੑ
env: GH_REPO: ${{ github.repository }} GH_TOKEN: ${{ github.token }} steps:
- uses: yumemi-inc/path-filter@v2 with: patterns: 'server/**' run: gh pr edit ${{ github.event.number }} --add-label 'server' run-if-not: gh pr edit ${{ github.event.number }} --remove-label 'server' - uses: yumemi-inc/path-filter@v2 with: patterns: 'front/**' run: gh pr edit ${{ github.event.number }} --add-label 'front' ɹ run-if-not: gh pr edit ${{ github.event.number }} --remove-label ‘front' … 3. ࣗಈͰϓϧϦΫʹϥϕϧΛ༩ ※ actions/labeler ͕αϙʔτ͍ͯ͠ͳ͍݅Ͱϥϕϧ͚Ͱ͖ΔΑ͏͜͏͍ͯ͠·͢
4. ϒϥϯν໊ͷνΣοΫ
4. ϒϥϯν໊ͷνΣοΫ • ϞϊϨϙʹ͓͍ͯɺ௨ৗͷ git- fl ow ͷϒϥϯνʹՃ͑ͯɺαϒγες Ϝ༻ͷϒϥϯνΛ࡞ͬͨΓ
pre fi x Λ͚ͭͨΓ͕ͪ͠ʢݸਓతͳ؍ଌʣ • ྫɿ feature/server/hogeɺhot fi x/front/fuga • .. ͓ͷͣͱϒϥϯνͷӡ༻ϧʔϧෳࡶͱͳΔͷͰػցతʹνΣοΫ
- name: Fail if head branch name is invalid if:
|- !( github.head_ref == 'develop' || startsWith(github.head_ref, 'feature/server/') || startsWith(github.head_ref, 'feature/front/') || ... ) uses: yumemi-inc/comment-pull-request@v1 with: comment: | Head branch name is invalid. fail: true 4. ϒϥϯν໊ͷνΣοΫ ϓϧϦΫʹίϝϯτͭͭ͠ϫʔΫϑϩʔΛམͱ͢ ※ ࣮ࡍͷӡ༻Ͱ head ϒϥϯνຖͷ base ϒϥϯν໊ͷνΣοΫʢ͖ઌ͕ਖ਼͍͔͠ʣ͍ͯ͠·͢
4. ϒϥϯν໊ͷνΣοΫ https://github.com/marketplace/actions/comment-pull-request-for-work fl ow ར༻͍ͯ͠Δ actionɿ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ ͋Δػೳ a ͷϓϧϦΫʹɺαϒγεςϜ bɺc ͷϓϧϦΫؚ͕·ΕΔέʔε ʢػೳ a
ͷ࣮ݱʹɺෳͷαϒγεςϜΛލͬͨίʔυͷमਖ਼͕ඞཁͳ߹ʣ feature/a ← feature/sub_b ͷϓϧϦΫ feature/a ← feature/sub_c ͷϓϧϦΫ develop ← feature/a ͷϓϧϦΫ Ϛʔδ Ϛʔδ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ develop ← feature/a ͷϓϧϦΫʹίϝϯτ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ - name: List associated pull request numbers
uses: yumemi-inc/associated-pull-requests@v1 id: associated-pr with: format: 'markdown' merge-commit-only: false - name: Comment if: steps.associated-pr.outputs.numbers != null uses: yumemi-inc/comment-pull-request@v1 with: comment: | ### pull requests merged into this pull request: ${{ steps.associated-pr.outputs.numbers }} previous-comment: 'hide' Ϛʔδͷӡ༻࣍ୈ͕ͩ false ͷํ͕औΓ͜΅͕͠ແ҆͘ṛ ʢͨͩίϛοτཤྺ͕͍߹͕͔͔࣌ؒΔʣ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ https://github.com/marketplace/actions/associated-pull-requests ར༻͍ͯ͠Δ actionɿ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ • ϦϦʔε༻ͷϓϧϦΫͰɺϦϦʔεʹؚ·ΕΔϓϧϦΫͷҰཡΛίϝϯτ ͢ΔΑ͏ͳ͍ํͰ͖Δ
5. αϒɾϓϧϦΫΤετҰཡΛίϝϯτ https://zenn.dev/yumemi_inc/articles/3ed5a217cf3cbb
6. Bitrise ͷϫʔΫϑϩʔΛ GitHub Actions Ͱ࣮ߦ
6. Bitrise ͷϫʔΫϑϩʔΛ GitHub Actions Ͱ࣮ߦ - uses: yumemi-inc/path-filter@v2
id: filter with: patterns: 'ios/**' - if: steps.filter.outputs.exists == 'true' uses: p-mazhnik/bitrise-run-build@v1 with: bitrise-app-slug: 'your-app-slug' bitrise-token: ${{ secrets.YOUR_TOKEN }} bitrise-workflow: 'your-workflow-name' listen: true skip-git-status-report: true - if: failure() ... ྫ͑αϒγεςϜ͏ͪ iOS Bitrise ͰϏϧυ͢Δɺͱ͍͏έʔε ݁ՌΛͬͯ࣍ͷ step Λ࣮ߦͰ͖Δʂ
6. Bitrise ͷϫʔΫϑϩʔΛ GitHub Actions Ͱ࣮ߦ https://github.com/marketplace/actions/bitrise-build-runner ར༻͍ͯ͠Δ actionɿ
6. Bitrise ͷϫʔΫϑϩʔΛ GitHub Actions Ͱ࣮ߦ • Bitrise ͷϫʔΫϑϩʔΛ
GitHub Actions ͷ 1 step ͱͯ͠ΈࠐΊΔͷ Ͱͱͯศར
Thank you ! @hkusu_ ฐࣾ Android ΤϯδχΞΛ ઈࢍืूத Ͱ͢ʂ