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
Nx CloudでCIを爆速にした話
Search
puku0x
May 19, 2023
Technology
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Nx CloudでCIを爆速にした話
TechBrew 〜 一杯のお酒で繋がるエンジニアたち〜@福岡
puku0x
May 19, 2023
More Decks by puku0x
See All by puku0x
新メンバーのために、シニアエンジニアが環境を作る時代
puku0x
0
1.5k
Agent Skills 入門
puku0x
0
1.9k
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
2.1k
生成AIではじめるテスト駆動開発
puku0x
0
1.4k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
2
3.3k
Nx × AI によるモノレポ活用 〜コードジェネレーター編〜
puku0x
0
1.7k
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
310
ファインディでのGitHub Actions活用事例
puku0x
9
3.9k
Findyの開発生産性向上への取り組み ~Findyフロントエンドの場合~
puku0x
0
490
Other Decks in Technology
See All in Technology
知らん間に、回ってる
ming_ayami
0
510
ボーイスカウトルールでメモリやスキルを改善しよう
azukiazusa1
1
700
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
150
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
170
誤解だらけの開発生産性 / Myths and Misconceptions about Developer Productivity
i35_267
1
230
ローカルLLMとLINE Botの組み合わせ その3 / LINE DC Generative AI Meetup #8
you
PRO
0
130
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
150
GuardrailからGovernanceへ~AIエージェント運用の次の課題~
sbspsy
2
270
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
2
160
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
100
はじめてのWDM
miyukichi_ospf
1
140
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
0
120
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
11
38k
Six Lessons from altMBA
skipperchong
29
4.3k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
230
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Deep Space Network (abreviated)
tonyrice
0
220
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
550
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
380
We Are The Robots
honzajavorek
0
270
Transcript
Nx CloudでCIを爆速にした話 TechBrew 〜 一杯のお酒で繋がるエンジニアたち〜@福岡 @puku0x Noriyuki Shinpuku
@puku0x 2
@puku0x 3 CIにどれぐらい時間がかかっていますか?
@puku0x 成長のジレンマ 4 機能追加 コード量 増 CI時間 増
@puku0x 5 CIが遅いとどうなる?
@puku0x レビューが遅くなる 6 20分後でいいや
@puku0x 7 ブランチの生存期間が 延びるとどうなる?
@puku0x コンフリクトが増える 8
@puku0x 9 CI高速化がカギ
@puku0x CI高速化のテクニック • キャッシュの活用 ~/.npm や node_modules 等をキャッシュ • 変更検知
影響範囲のコードのみ実行 10 その他: ジョブ並列化、仮想マシンのグレードアップ等
node_modulesのキャッシュ 11 strategy: matrix: node: ['16', '18'] steps: - uses:
actions/cache@v3 id: cache with: path: node_modules key: ${{ runner.os }}-node-${{ matrix.node }}-npm-${{ hashFiles('**/package-lock.json') }
- uses: actions/cache@v3 if: steps.cache.outputs.cache-hit != 'true' with: path: |
~/.npm ~/.cache/Cypress key: ${{ runner.os }}-node-${{ matrix.node }}-npm-${{ hashFiles('**/package-lock.json') } restore-keys: | ${{ runner.os }}-node-${{ matrix.node }}-npm- - name: Install dependencies if: steps.cache.outputs.cache-hit != 'true' run: npm ci 他のディレクトリのキャッシュ 12
@puku0x 13 https://nx.dev/
@puku0x Nx + Nx Cloud • nx affected による変更検知 •
Nx Cloudによるリモートキャッシュ ◦ CI時間平均 約10分 → 約5分 ※最短で1分未満 14
@puku0x 15
@puku0x 16 300時間/月 以上を削減!
@puku0x 17 https://speakerdeck.com/puku0x/findynohurontoendoshe-ji-shua-xin-wotong-sitede-raretaji-shu-de-fu-zhai-tonoxiang-kihe-ifang
@puku0x Nxはいいぞ @puku0x Noriyuki Shinpuku