Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GitHub Actions Parallel Testing
Search
Yasuhiroki
October 16, 2019
Technology
1.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actions Parallel Testing
2019/10/16 GitHub Actions Meetup Tokyo β の発表資料です
Yasuhiroki
October 16, 2019
More Decks by Yasuhiroki
See All by Yasuhiroki
自分に勉強させるには
yasuhiroki
1
480
Android Studio `Command+Shift+A`
yasuhiroki
0
400
シェルスクリプトをサーバーレスで cron したい
yasuhiroki
1
950
rails new コマンド
yasuhiroki
1
880
自動化を習慣化する
yasuhiroki
2
16k
circleci.vim
yasuhiroki
0
1.9k
ベンチャー企業がCircleCIを選んだ理由と活用方法
yasuhiroki
1
880
Rubyの正規表現を調べてみた
yasuhiroki
0
1k
開発者(個人)のためのJenkins 運用編
yasuhiroki
0
2.4k
Other Decks in Technology
See All in Technology
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
400
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
1
1.4k
「とりあえず動く」の先へ。 AI時代のチーム開発と内部設計/2026-slsdays
slsops
0
150
実体験から学ぶ分析エージェントの開発と運⽤
recruitengineers
PRO
1
380
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
2
1.4k
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
210
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
150
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
550
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
260
プロダクト価値を、 チームが使える判断軸に変える
vivion
0
130
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
520
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
3
1.6k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
41k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
860
My Coaching Mixtape
mlcsv
0
340
Faster Mobile Websites
deanohume
310
32k
How to Ace a Technical Interview
jacobian
280
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Building Adaptive Systems
keathley
44
3.2k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Paper Plane
katiecoart
PRO
4
54k
Site-Speed That Sticks
csswizardry
13
1.5k
Transcript
GitHub Actions Parallel Testing GitHub Actions Meetup Tokyo β A10
Lab Inc. yasuhiroki
⾃自⼰己紹介
Twitter
⾃自⼰己紹介 • A10 Lab Inc. • 元Jenkinsおじさん • 現CircleCIおじさん •
CircleCI User Community Leader
本発表の概要 • GitHub Actions で並列列テスト試してみた • 内容は個⼈人的 Tipsがメイン • 私も含め皆さんの間で情報交換するきっか
けになると嬉しい
本題
やりたいこと 複数のテストを 分割して並列列して実⾏行行したい
matrix を使えばできる • https://github.com/yasuhiroki/parallel-test- github-actions-sample/tree/ b7e78a7c731a6b0590a636ed738eddfe5b3 0f65e/.github/workflows/rspec-parallels-3- node.yml#L8
テスト時間を調整したい 6min 2min 4min 4min 4min 4min job 1 job
2 job 3 job 1 job 2 job 3
CircleCIの例例 • circleci tests split --split-by=timings は CircleCI 上で記録されたファイルごとのテスト実⾏行行 時間を元に振り分けてくれる
container 0 container 1 UFTU@@TQFDSC UFTU@@TQFDSC UFTU@@TQFDSC 過去の記録から振り分ける
knapsack • https://github.com/ArturT/knapsack • ファイルごとのテスト実⾏行行時間を JSON に出 ⼒力力してくれる • その
JSON と並列列数から良い感じに割り振っ てくれる • クラウド版もあるらしい?
knapsack の使⽤用例例 • テスト実⾏行行時間 JSON • https://github.com/yasuhiroki/parallel-test-github-actions- sample/tree/b7e78a7c731a6b0590a636ed738eddfe5b30f65e/ knapsack_rspec_report.json •
Workflow 例例 • https://github.com/yasuhiroki/parallel-test-github-actions- sample/tree/ b7e78a7c731a6b0590a636ed738eddfe5b30f65e/.github/ workflows/rspec-parallels-knapsack.yml#L21
テスト結果を集計したい
• artifact を使う テスト結果を集計したい uses: actions/upload-artifact@master with: name: reports path:
reports reports
• artifact を使う テスト結果を集計したい uses: actions/download-artifact@master with: name: reports reports
毎回 install するのやめたい • キャッシュ機能がリリースされるのを待とう
毎回 install するのやめたい • 同じ Workflow 内なら artifact が使えるかも? •
upload が遅くて逆効果だった • https://github.com/yasuhiroki/enjoy- github-actions/commit/ 9e8e9de9c6898f1fc9f491fe11e75e87a4b 5d0cb/checks?check_suite_id=266056589
リポジトリURL • https://github.com/yasuhiroki/enjoy-github- actions • https://github.com/yasuhiroki/parallel-test- github-actions-sample
Tips集紹介
actions/github-script • JavaScriptを直接 YAML に書けちゃう •
GitHub token 取得⽅方法 • 実は2パターン書き⽅方がある • secrets.GITHUB_TOKEN • github.token •
commit_comment is not a valid event name • 急に is
not a valid って⾔言われるようになった
ご清聴ありがとうございました