पाठ 10 / 23
Caching और Matrix Builds
Dependency caching से GitHub Actions तेज़ करें और build matrix से कई Node versions या operating systems पर test करें।
Dependencies cache करें
Package manager का store cache करने से हर run पर dependencies दोबारा download नहीं करनी पड़तीं। setup-node यह आपके लिए कर सकता है।
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm # restores ~/.npm keyed by package-lock.json
- run: npm ci
- run: npm testBuild matrix
Matrix एक ही job को कई संयोजनों पर parallel चलाता है।
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
node: [20, 22]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: "${{ matrix.node }}" }
- run: npm ci && npm testCaches को lockfile hash पर key करें ताकि dependencies बदलने पर वे ताज़ा हों। Matrix run time गुणा करता है, इसलिए केवल वे संयोजन रखें जिन्हें आप सच में support करते हैं।
त्वरित जाँच
त्वरित जाँच: Build matrix क्या करता है?
- Runs a job across several combinations in parallel
- Encrypts secrets
- Deploys to production
- Deletes caches
Answer
Runs a job across several combinations in parallel — हर matrix संयोजन अपना job run बन जाता है।