跳转到内容
搜索文档

GitHub Actions

最后更新 查看 MarkdownAgent 设置

你可以使用 GitHub Actions 部署 Worker。以下介绍如何设置 GitHub Actions 工作流。

1. 身份验证

在本地运行 Wrangler 时,通过 wrangler login 命令与 Cloudflare API 进行身份验证,该命令会启动交互式身份验证流程。由于 CI/CD 环境是非交互式的,Wrangler 需要 Cloudflare API 令牌账户 ID 来与 Cloudflare API 进行身份验证。

Cloudflare 账户 ID

要查找 Cloudflare 账户 ID,请参阅查找账户和 zone ID

API 令牌

要在 CI 作业中创建用于 Wrangler 身份验证的 API 令牌:

  1. 在 Cloudflare 仪表板中,前往 Account API tokens(账户 API 令牌) 页面。

    Go to Account API tokens ↗
  2. 选择 Create Token(创建令牌)

  3. Permission policies(权限策略) 下,打开 Custom(自定义) 下拉菜单并选择 Edit Cloudflare Workers(编辑 Cloudflare Workers)

  4. 自定义令牌名称。

  5. 限定令牌范围。

你需要选择生成的 API 令牌可以访问的账户和 zone 资源。我们建议尽可能缩小范围以限制令牌的访问权限。例如,如果你可以访问三个不同的 Cloudflare 账户,应将生成的 API 令牌限制为仅部署 Worker 的账户。

2. 设置 CI/CD

在 CI/CD 环境中运行 Wrangler 的方法取决于项目的具体设置(无论你使用 GitHub Actions/Jenkins/GitLab 还是其他工具)。

要设置 CI/CD:

  1. 前往 CI/CD 平台并添加以下密钥:
  1. 创建一个负责部署 Worker 的工作流。该工作流应运行 wrangler deploy。在下一节中查看 GitHub Actions 工作流示例。

GitHub Actions

Cloudflare 提供了用于部署 Worker 的官方 Action。参考以下示例工作流,在推送到 main 分支时部署 Worker。

name: Deploy Worker
on:
  push:
    branches:
      - main
jobs:
  deploy:
    runs-on: ubuntu-latest
    timeout-minutes: 60
    steps:
      - uses: actions/checkout@v6
      - name: Build & Deploy Worker
        uses: cloudflare/wrangler-action@v3
        with:
          apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
          accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}

这篇文档对您有帮助吗?