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
510
モノレポのプルリクエストに最近、導入したもの
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
360
Android の静的解析における SARIF ファイルの活用
hkusu
0
5.1k
CI_でライブラリのバージョンの変化をレポートする.pdf
hkusu
0
360
Maestro を GitHub Actions で動かす 〜Android編〜
hkusu
1
1.5k
Android の CI(GitHub Actions)の改善で、最近やったこと
hkusu
0
650
Tauri Mobile で生成される Android のコードを見てみる
hkusu
0
1.4k
Custom GitHub Actions を作って Organization 内で共有する
hkusu
1
540
GitHub Actions でユニットテストの結果をレポートする
hkusu
0
3.6k
Android で Multiplatform Settings を使う
hkusu
0
1k
Other Decks in Technology
See All in Technology
LLMでAI-OCR、実際どうなの? / llm_ai_ocr_layerx_bet_ai_day_lt
sbrf248
0
430
S3 Glacier のデータを Athena からクエリしようとしたらどうなるのか/try-to-query-s3-glacier-from-athena
emiki
0
200
2時間で300+テーブルをデータ基盤に連携するためのAI活用 / FukuokaDataEngineer
sansan_randd
0
130
LIFF CLIとngrokを使ったLIFF/LINEミニアプリのお手軽実機確認
diggymo
0
240
マルチプロダクト×マルチテナントを支えるモジュラモノリスを中心としたアソビューのアーキテクチャ
disc99
1
360
Vision Language Modelと自動運転AIの最前線_20250730
yuyamaguchi
3
1.2k
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
6
710
ロールが細分化された組織でSREと協働するインフラエンジニアは何をするか? / SRE Lounge #18
kossykinto
0
200
2025-07-31: GitHub Copilot Agent mode at Vibe Coding Cafe (15min)
chomado
2
390
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
710
AI関数が早くなったので試してみよう
kumakura
0
190
Amazon Bedrock AgentCoreのフロントエンドを探す旅 (Next.js編)
kmiya84377
1
130
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Music & Morning Musume
bryan
46
6.7k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
A better future with KSS
kneath
239
17k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
RailsConf 2023
tenderlove
30
1.2k
Raft: Consensus for Rubyists
vanstee
140
7.1k
KATA
mclloyd
32
14k
Building Applications with DynamoDB
mza
95
6.5k
How GitHub (no longer) Works
holman
314
140k
GraphQLとの向き合い方2022年版
quramy
49
14k
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 ΤϯδχΞΛ ઈࢍืूத Ͱ͢ʂ