跳转到内容
本站为社区维护的非官方中文翻译,与 Cloudflare, Inc. 无关联。本站不提供账户登录,请勿在任何非官方站点输入您的 Cloudflare 账户信息。官方文档:developers.cloudflare.com

比较工作流

最后更新 查看 MarkdownAgent 设置

Previews 是在生产前测试更改的推荐方式。

快速比较

工作流 最适合 命令
Previews 同一 Worker 下为分支和拉取请求提供完整环境。 npx wrangler preview
Version URLs 使用生产资源的已上传代码版本。 wrangler versions upload
Wrangler environments 分别部署的 Worker。 wrangler deploy --env <name>

Version URLs

仅当你需要在将某个已上传版本部署到生产流量之前检查它时,才使用 Version URLs。

Version URLs 从 Worker 版本创建,包括使用 wrangler versions upload 上传的版本。它们与版本和部署工作流绑定。

Version URLs 适合以下场景:

  • 在生产部署或渐进式部署之前检查某一个已上传版本。
  • 围绕 wrangler versions upload 和 wrangler versions deploy 构建的工作流。

从带别名的 Version URLs 迁移到 Previews

如果你正在使用通过 wrangler versions upload --preview-alias 创建的带别名 Version URLs 进行分支或拉取请求预览,请改用 Previews。带别名的 Version URLs 不会创建分支隔离资源。

你现在的做法 改为这样做
wrangler versions upload --preview-alias staging npx wrangler preview --name staging
分享带别名的 Version URL 供 PR 审查 分享 Preview URL 或自定义域名 Preview URL。
为带别名的 Version URLs 设置 preview_urls = true 使用 Preview 设置 配置分支特定的变量、密钥和绑定(binding)。

Previews 提供分支隔离、Preview 专用设置、自定义域名支持,以及对 Durable Objects 和 Containers 的自动资源隔离。

Wrangler environments

Wrangler environments 会创建分别命名的 Worker,例如 my-worker-staging。当开发、预发布或其他环境需要具有不同设置、路由或自定义域名的持久 Worker 时使用它们。

你可以在 Wrangler environment 下创建分支 Previews。在 env.staging.previews 中定义其 Preview 设置:

{
  "name": "my-worker",
  "env": {
    "dev": {
      "name": "my-worker-dev",
      "vars": {
        "ENVIRONMENT": "development"
      }
    },
    "staging": {
      "name": "my-worker-staging",
      "vars": {
        "ENVIRONMENT": "staging"
      },
      "previews": {
        "vars": {
          "ENVIRONMENT": "staging-preview"
        }
      }
    }
  }
}
name = "my-worker"

[env.dev]
name = "my-worker-dev"

  [env.dev.vars]
  ENVIRONMENT = "development"

[env.staging]
name = "my-worker-staging"

  [env.staging.vars]
  ENVIRONMENT = "staging"

[env.staging.previews.vars]
ENVIRONMENT = "staging-preview"

在此示例中,dev 没有 previews 块,仍是持久的 Worker environment。staging 包含用于分支 Previews 的 previews 块。

然后在运行 Preview 命令时包含该 environment:

npx wrangler preview --env staging

这会在 staging Worker 下创建或更新分支 Preview。Wrangler environment 提供持久边界,Previews 在其中提供分支隔离。

这篇文档对您有帮助吗?