你可以使用 GitLab CI/CD ↗ 部署 Worker。以下介绍如何设置 GitLab CI/CD 流水线。
在本地运行 Wrangler 时,通过 wrangler login 命令与 Cloudflare API 进行身份验证,该命令会启动交互式身份验证流程。由于 CI/CD 环境是非交互式的,Wrangler 需要 Cloudflare API 令牌和账户 ID 来与 Cloudflare API 进行身份验证。
要查找 Cloudflare 账户 ID,请参阅查找账户和 zone ID。
要在 CI 作业中创建用于 Wrangler 身份验证的 API 令牌:
-
在 Cloudflare 仪表板中,前往 Account API tokens(账户 API 令牌) 页面。
Go to Account API tokens ↗ -
选择 Create Token(创建令牌)。
-
在 Permission policies(权限策略) 下,打开 Custom(自定义) 下拉菜单并选择 Edit Cloudflare Workers(编辑 Cloudflare Workers)。
-
自定义令牌名称。
-
限定令牌范围。
你需要选择生成的 API 令牌可以访问的账户和 zone 资源。我们建议尽可能缩小范围以限制令牌的访问权限。例如,如果你可以访问三个不同的 Cloudflare 账户,应将生成的 API 令牌限制为仅部署 Worker 的账户。
在 CI/CD 环境中运行 Wrangler 的方法取决于项目的具体设置(无论你使用 GitHub Actions/Jenkins/GitLab 还是其他工具)。
要设置 CI:
- 前往 CI 平台并添加以下密钥:
CLOUDFLARE_ACCOUNT_ID:设置为要部署 Worker 的 Cloudflare 账户 ID。CLOUDFLARE_API_TOKEN:设置为生成的 Cloudflare API 令牌。
- 创建一个负责部署 Worker 的工作流。该工作流应运行
wrangler deploy。在下一节中查看 GitHub Actions ↗ 工作流示例。
请参阅 GitLab 博客 ↗ 中的示例流水线。在 script 键下,将 npm run deploy 替换为 npx wrangler deploy。