CI/CD の実行時間を短縮し、コストを削減するため、依存関係やビルド成果物のキャッシュを積極的に利用してください。
Node.js 依存関係のキャッシュ
actions/setup-node の cache オプションを使用する方法(推奨):
- name: Use Node.js 22
uses: actions/setup-node@v4
with:
node-version: "22"
cache: "npm" # package-lock.json を自動検出してキャッシュ
手動でキャッシュを設定する方法
より細かい制御が必要な場合は actions/cache を使用:
- name: Cache node modules
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
ビルド成果物のキャッシュ
ビルド時間が長い場合は、ビルド成果物もキャッシュ対象に含めることを検討してください:
- name: Cache build artifacts
uses: actions/cache@v3
with:
path: |
node_modules
.next # Next.js の場合
dist # ビルド出力ディレクトリ
key: ${{ runner.os }}-build-${{ hashFiles('**/package-lock.json') }}