Deploy Release
デプロイ
GitHub Actions 等の CI/CD を用いて`main` や `develop` へのマージ、タグ付けをトリガーに自動デプロイを行い、ヒューマンエラーを減らします。
アップロード漏れ、上書きミス、追跡困難のため原則として FTP による手動アップロードは禁止します。
※サーバー環境、その他やむを得ない理由により GitHub Actions を利用できない場合はこの限りではありません。
※サーバー環境、その他やむを得ない理由により GitHub Actions を利用できない場合はこの限りではありません。
CI/CD の最適化
キャッシュの利用
CI/CD の実行時間を短縮し、コストを削減するため、依存関係やビルド成果物のキャッシュを積極的に利用してください。
GitHub Actions でのキャッシュ設定
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') }}