cloudflare pages 由于deployments过多,无法删除project
💡
官方教程
Delete a project with a high number of deployments
You may not be able to delete your Pages project if it has a high number (over 100) of deployments. The Cloudflare team is tracking this issue.
As a workaround, review the following steps to delete all deployments in your Pages project. After you delete your deployments, you will be able to delete your Pages project.
- Download the
delete-all-deployments.zipfile by going to the following link: https://pub-505c82ba1c844ba788b97b1ed9415e75.r2.dev/delete-all-deployments.zip. - Extract the
delete-all-deployments.zipfile. - Open your terminal and
cdinto thedelete-all-deploymentsdirectory. - In the
delete-all-deploymentsdirectory, runnpm installto install dependencies. - Review the following commands to decide which deletion you would like to proceed with:
- To delete all deployments except for the live production deployment (excluding aliased deployments):
CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> npm start
- To delete all deployments except for the live production deployment (including aliased deployments, for example,
staging.example.pages.dev):
CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> CF_DELETE_ALIASED_DEPLOYMENTS=true npm start
To find your Cloudflare API token, log in to the Cloudflare dashboard, select the user icon on the upper righthand side of your screen > go to My Profile > API Tokens.
Tips
安装Node.js
需要软件Node.js 可参考下面链接进行下载安装
命令行所需信息
YOUR_CF_API_TOKEN
在My Profile 的API Tokens页面,创建Custom tokens
鉴于我不清楚是Account Pages还是Cloudflare Pages(虽然大概率是Cloudflare Pages),可能的我都赋予权限了,最后TTL可以自己设置tokens的有效期,然后获得tokens



Account ID & CF_PAGES_PROJECT_NAME
Account ID在Workers & Pages的Overview页面右侧。
CF_PAGES_PROJECT_NAME在中间。

执行命令
打开powershell,进入下载zip解压后的文件夹,安装依赖项npm install

执行删除deploy命令,有两种命令
- 删除所有部署,但保留现场生产部署(不包括别名部署)
此命令用于删除项目中的所有部署,但会保留当前的生产部署(即当前活跃的,对外提供服务的部署),不包括任何已设置的别名部署(如子域名指向的特定部署)。
CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> npm start
- 删除所有部署,包括现场生产部署的别名部署
此命令与上一个命令类似,用于删除项目中的所有部署,但它还包括了任何别名部署。这意味着,如果你有部署如 staging.example.pages.dev 这样通过别名访问的部署,它们也会被删除。
CF_API_TOKEN=<YOUR_CF_API_TOKEN> CF_ACCOUNT_ID=<ACCOUNT_ID> CF_PAGES_PROJECT_NAME=<PROJECT_NAME> CF_DELETE_ALIASED_DEPLOYMENTS=true npm start
To find your Account ID, refer to Find your zone and account ID.
我是希望全删,所以命令如下:
$env:CF_API_TOKEN="填入前面生成的YOUR_CF_API_TOKEN"
$env:CF_ACCOUNT_ID="填入你的Account ID"
$env:CF_PAGES_PROJECT_NAME="你要删除deployments的项目名称"
$env:CF_DELETE_ALIASED_DEPLOYMENTS=$true
npm start
检测一会之后就会开始跑,一直到结束

然后我八百多个deployments就被删光啦,可以正常删除项目了!开熏~【其他项目也可以日常做清理oh】

Secret Part