Cloudflare Pages projectがdeployment多すぎで削除できない時の対処

Cloudflare Pagesの旧projectを消そうとしたら、deploymentが多すぎて削除できないことがあります。custom domainを外し、deploymentを減らしてからprojectを削除する手順です。

まずcustom domainを外す

旧Pages projectを削除する前に、まずcustom domainを外します。本番ドメインが旧projectに残っていると、削除や移行の途中で本番に影響します。

新projectへcustom domainを移し、本番表示を確認します。新projectがGitHub連携されているか、最新commitを反映しているかも見ます。

旧projectに本番ドメインが残っていないことを確認してから、削除作業に進みます。ここを急ぐと戻し先がなくなります。

deploymentが多いと削除できない

Cloudflare Pages projectを削除しようとすると、Your project has too many deployments to be deletedというエラーが出ることがあります。

これはproject内のdeploymentが多すぎて、そのままproject本体を削除できない状態です。GitHub連携を作り直したあと、旧projectを消す段階で当たりやすい落とし穴です。

この場合は、project本体を削除する前にdeploymentを減らす必要があります。

Wranglerでログインする

Wranglerを使う場合、まずCloudflareへログインします。

npx wrangler loginを実行すると、ブラウザでCloudflareの認可画面が開きます。許可後、Pages project一覧を確認します。
npx wrangler pages project listで、削除対象の旧project名を確認します。別projectを消さないために、この確認は省かない方が安全です。

deploymentを削除する

deployment一覧は、npx wrangler pages deployment list --project-name columns-oldのように確認できます。

削除する場合は、deployment IDを指定します。aliased deploymentがある場合は--forceが必要になることがあります。

今回のケースでは、旧projectにdeploymentが大量に残っていたため、330件削除しました。最後にlive deploymentが1件だけ残った状態まで減らしました。

project本体を削除する

deploymentを減らしたあと、npx wrangler pages project delete columns-oldでproject本体を削除します。

確認プロンプトが出るので、対象project名が正しいことを見てから進めます。削除後は、npx wrangler pages project listで一覧から消えたことを確認します。

Cloudflare Pagesは公開までは簡単ですが、運用後の掃除には少し癖があります。旧projectはcustom domainを外し、deploymentを整理してから消すのが安全です。

まとめ

Cloudflare Pagesは公開までは簡単ですが、実運用ではGitHub連携、Preview URL、Access、旧project整理を分けて考える必要があります。

大事なのは、見えているサイトがどのproject、どのrepository、どのbranch、どのcommitから出ているかを確認することです。

参考情報