GLANZ. CREATIVE WORKS
Deploy Release

デプロイ

GitHub Actions 等の CI/CD を用いて`main` や `develop` へのマージ、タグ付けをトリガーに自動デプロイを行い、ヒューマンエラーを減らします。
アップロード漏れ、上書きミス、追跡困難のため原則として FTP による手動アップロードは禁止します。
※サーバー環境、その他やむを得ない理由により GitHub Actions や SSH 接続を利用できない場合はこの限りではありません。

CI/CD の最適化

キャッシュの利用

CI/CD の実行時間を短縮し、コストを削減するため、依存関係やビルド成果物のキャッシュを積極的に利用してください。

GitHub Actions でのキャッシュ設定

Node.js 依存関係のキャッシュ

actions/setup-nodecache オプションを使用する方法(推奨):

- 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') }}