Closed4
Vercel: 特定のブランチのみや、特定のディレクトリに変化があった場合のみビルドする (Ignored Build Step)
公式ドキュメントにまとめられている
Ignored Build Step の設定で行う
サンプル
- 特定の環境のみビルド(例: production, develop 環境
- 特定のブランチのみビルド(例: main、feature ブランチ
- 特定のディレクトリ内で変化があった場合のみ (例: monorepo構成
特定の環境のみビルド(例: production, develop 環境
リポジトリに 、下記の sample-script.sh
シェルスクリプトを用意する
#!/bin/bash
echo "VERCEL_ENV: $VERCEL_ENV"
if [[ "$VERCEL_ENV" == "production" ]] ; then
# Proceed with the build
echo "✅ - Build can proceed"
exit 1;
else
# Don't build
echo "🛑 - Build cancelled"
exit 0;
fi
vercelのIgnored Build Stepの設定にて、このシェルスクリプトを起動する
特定のブランチのみビルド(例: main、stagingブランチ
上記と設定は同じ。
スクリプトの内容を下記に変更
#!/bin/bash
echo "VERCEL_GIT_COMMIT_REF: $VERCEL_GIT_COMMIT_REF"
if [[ "$VERCEL_GIT_COMMIT_REF" == "staging" || "$VERCEL_GIT_COMMIT_REF" == "main" ]] ; then
# Proceed with the build
echo "✅ - Build can proceed"
exit 1;
else
# Don't build
echo "🛑 - Build cancelled"
exit 0;
fi
特定のディレクトリ内で変化があった場合のみ (例: monorepo構成など
monorepoで、frontendとbackendを同一リポジトリで扱っているときなど。
対象のディレクトリ、下記でいうfrontendのディレクトリに差分がある場合のみ、ビルドされる
git diff HEAD^ HEAD --quiet ./packages/frontend/
このスクラップは2023/01/23にクローズされました