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
Hiroyuki Kusu
June 03, 2024
Technology
2
500
モノレポのプルリクエストに最近、導入したもの
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
350
Android の静的解析における SARIF ファイルの活用
hkusu
0
5k
CI_でライブラリのバージョンの変化をレポートする.pdf
hkusu
0
350
Maestro を GitHub Actions で動かす 〜Android編〜
hkusu
1
1.5k
Android の CI(GitHub Actions)の改善で、最近やったこと
hkusu
0
630
Tauri Mobile で生成される Android のコードを見てみる
hkusu
0
1.4k
Custom GitHub Actions を作って Organization 内で共有する
hkusu
1
530
GitHub Actions でユニットテストの結果をレポートする
hkusu
0
3.5k
Android で Multiplatform Settings を使う
hkusu
0
1k
Other Decks in Technology
See All in Technology
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
150
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
610
PHP開発者のためのSOLID原則再入門 #phpcon / PHP Conference Japan 2025
shogogg
4
890
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
260
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
650
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
260
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
17
5.8k
変化する開発、進化する体系時代に適応するソフトウェアエンジニアの知識と考え方(JaSST'25 Kansai)
mizunori
1
240
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
1.2k
解析の定理証明実践@Lean 4
dec9ue
0
180
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
240
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
15
5.4k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Designing for Performance
lara
609
69k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Gamification - CAS2011
davidbonilla
81
5.3k
Automating Front-end Workflow
addyosmani
1370
200k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
A Modern Web Designer's Workflow
chriscoyier
694
190k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
710
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 ΤϯδχΞΛ ઈࢍืूத Ͱ͢ʂ