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 is Fun
Search
hatsu
June 27, 2024
Programming
240
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actions is Fun
hatsu
June 27, 2024
More Decks by hatsu
See All by hatsu
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
390
active って名前で誤魔化すな / DON'T JUST CALL IT "ACTIVE"
hatsu38
0
120
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
220
MySQL初心者が311個のカラムにNot NULL制約を追加していってALTER TABLEについて学んだ話
hatsu38
2
450
introduction_scriptor_gem.pdf
hatsu38
1
210
約9000個の自動テストの 時間を50分->10分に短縮 Flakyテストを1%以下に抑えた話
hatsu38
25
21k
Just a Rails Patch Update
hatsu38
2
1k
Dive into MaintenanceTasks
hatsu38
1
240
Other Decks in Programming
See All in Programming
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
240
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.2k
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
190
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
530
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
300
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
360
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
440
スマート反転とウェブアクセシビリティ
camiha
0
210
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
130
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
160
setup-vp GitLab対応の裏側
naokihaba
0
120
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
250
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
440
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
2k
The Limits of Empathy - UXLibs8
cassininazir
1
690
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Thoughts on Productivity
jonyablonski
76
5.4k
Designing for Timeless Needs
cassininazir
1
490
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
530
Into the Great Unknown - MozCon
thekraken
41
2.7k
Mobile First: as difficult as doing things right
swwweet
225
10k
How to Ace a Technical Interview
jacobian
281
24k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
430
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Transcript
GitHub Actions is Fun ʹͳ͍ͬͯͬͨ 2024/06/28 Shinjuku.rb#93 ͖ͳͷհLTେձ @hatsu_38
ࣗݾհ • ͭ͞Μ(@hatsu_38) • Ruby 5 • GitHub Actionsָ͍͠ •
SHE Inc. • ອը📚
ٕज़ελοΫ • API,GraphQLαʔόʔ: Ruby on Rails - RSpec • AdminͷUI(/adminϑΥϧμ):
TypeScript/Next.js - RSpec(Capybara)ͱJest • Ϣʔβʔը໘ͷUI(/frontend-nextϑΥϧμ): TypeScript/Next.js - RSpec(Capybara)ͱ Jest • CI: GitHub Actions
Flaky Test ͳ͍ͨ͘͠Μ͚ͩͲ…
CI্Ͱ͔͠ൃੜ͠ͳ͍Flakyͱૺ۰
Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ
εΫγϣݟͯΘ͔ΒΜ🤯
ͦͦ֬ೝ͕໘😵💫 Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ…
͔ͯCI͍🥱
GitHub ActionsΖ͏
Allure Report • ςετ݁ՌΛྑ͍ײ͡ʹϨϙʔτ͢Δͭ • ςετͷ • ΧόϨοδ • ςετ࣌ؒ
• ςετ݁Ռཤྺ • εΫγϣͱ͔ඥ͚ΒΕΔ
Allure Report • bundle exec rspec —format AllureRspecFormatter • ςετͷใΛjsonʹग़ྗ
• allure generate allure_results/* -o tmp/allure_report • ςετ݁ՌΛHTMLʹม • ϓϧϦΫΤετຖʹςετ݁ՌͷHTMLΛVercelʹσϓϩΠ • ςετࣦഊ࣌ʹVercelͷURLΛBot͕ίϝϯτͰڭ͑ͯ͘ΕΔ
PRຖʹςετ݁ՌΛVercelʹσϓϩΠ
ςετࣦഊ࣌ʹVercelͷURLΛBot͕ίϝϯτ
ͦͦ֬ೝ͕໘😵💫 Artifactsʹ͋Δ Fail࣌ͷεΫγϣΛDLͯ֬͠ೝ
Bot͕ڭ͑ͯ͘ΕΔURLΛ֬ೝ✨
εΫγϣݟͯΘ͔ΒΜ🤯
capybara-playwright-driver • playwrightͱ͍͏ςετϑϨʔϜϫʔΫΛcapybara͔Β͑Δ • εΫγϣ͚ͩ͡Όͳ͘ςετ࣌ͷಈը͕ݟΒΕΔ • ։ൃऀπʔϧʹࡌͬͯΔΑ͏ͳωοτϫʔΫͱ͔ݟΒΕΔ • Allure Report্ͰݟΒΕΔ
rails 7.1 support playwright driver
ಈը͕ݟΒΕΔ
ωοτϫʔΫτϨʔε͕ݟΒΕΔ
εΫγϣݟͯΘ͔ΒΜ🤯
ಈըͱωοτϫʔΫτϨʔε Λݟͯղܾ✨
None
next build͕͍ • Ϣʔβʔը໘: next buildʹ10 → e2eςετ10(20ฒྻ) • Adminը໘:
next buildʹ5 → e2eςετ5(15ฒྻ)
next build࣌ؒΛݮΒͦ͏
next buildʹ Ωϟογϡ͕ΘΕ͍ͯͳ͍
next buildʹΩϟογϡ͕ΘΕ͍ͯͳ͍ • .next/cacheΛGitHub ActionsͷΩϟογϡʹอଘͯ͠Build࣌ʹར༻ • APIͷมߋͷΈͰϑϩϯτʹมߋͳ͍߹ɺBuild͠ͳ͍͍ͯ͘ • buildͰੜ͞ΕΔ.next/ΛCache͔ΒRestoreͯ͠࠶ར༻
݁Ռ #VJME࣌ؒ -JLFT "ENJO ZBSOMPDLʹมߋ͋Δ߹ NT N ZBSOMPDLʹมߋͳ͠ ϑϩϯτʹมߋ͋Γ NT
NT มߋແ͠ T T
#VJME࣌ؒ -JLFT "ENJO ZBSOMPDLʹมߋ͋Δ߹ NT N ZBSOMPDLʹมߋͳ͠ ϑϩϯτʹมߋ͋Γ NT NT
มߋແ͠ T T ݁Ռ 1/2 1/18 1/2 1/17
None
Ωϟογϡར༻ͯ࣌ؒ͠Λ1/2ʹ✨
GitHub Actions ָ͍͠