Loading
使用 DevOps Center 治理、管理和发布更改
快速入门:将 Salesforce CLI 与 DevOps Center 一起使用

快速入门:将 Salesforce CLI 与 DevOps Center 一起使用

使用 Salesforce CLI 从命令行自动化 DevOps Center 任务。在此快速入门中,您可以创建并激活漏斗,管理工作项目,并将更改升级到下一个漏斗阶段。

所需的 Edition

适用于:Lightning Experience in Professional(需要 API 访问权限)、Enterprise、Performance、Unlimited 和 Developer Edition
不适用于:Government Cloud Plus。联系您的 Salesforce 客户主管了解更多详细信息。
不适用于:欧盟操作区域。欧盟操作区域是一项特殊的付费服务,提供了更高级别的数据驻留承诺。根据标准产品条款和条件,不属于欧盟臭氧区域的欧盟组织也支持DevOps Center。
所需用户权限
创建漏斗: DevOps Center 管理员
要通过漏斗升级更改: DevOps Center 部署管理器

有关所有可用的标志和选项,请参阅Salesforce CLI 命令参考。

在您开始前,请完成这些任务。

  • 安装 Salesforce CLI。见安装 Salesforce CLI。
  • 安装 DevOps Center 插件。
    sf plugins install @salesforce/plugin-devops-center
  • 对 DevOps Center 可用的组织进行身份验证。此快速入门使用 my-devops-org 作为组织别名。
    sf org login web --alias my-devops-org
  • 从 UI 创建 DevOps Center 项目。
  • 将 GitHub(或 Bitbucket)存储库连接到 DevOps Center 组织。
  • 将经过身份验证的组织设置为默认组织。
    sf config set target-org=my-devops-org

    设置目标组织会忽略后续命令中的--target-org my-devops-org。此快速入门在每个命令中包含标志,以便清除目标组织。

设置漏斗

创建漏斗,添加并配置阶段,激活漏斗,并附加项目。

  1. 列出您的项目以查找项目 ID。
    sf devops project list --target-org my-devops-org

    复制要附加到漏斗的项目 ID。此快速入门使用0Hn000000000001中的示例。

  2. 创建无效漏斗,并将其连接到存储库。
    sf devops pipeline create --target-org my-devops-org --name "Release Pipeline" --repo https://github.com/myorg/myrepo

    从命令输出复制漏斗 ID。此快速入门使用0XB000000000001中的示例。

    在您配置阶段并激活之前,漏斗将保持非活动状态。

    要在创建漏斗时创建存储库,请使用带有 --repo-type github|bitbucket 的--create-repo。

  3. 将阶段添加到漏斗。新漏斗包含默认最终阶段。通过使用 --next-stage-id 指定现有阶段,在现有阶段之前添加每个新阶段。

    例如,添加集成阶段。

    sf devops pipeline stage add --target-org my-devops-org --pipeline-id 0XB000000000001 --name "Integration" --next-stage-id 0Xc000000000001

    从命令输出复制阶段 ID。其余示例使用集成阶段的0Xc000000000005。对每个附加阶段重复该命令,例如 UAT。

    提示
    提示 在 DevOps Center UI 中查看漏斗,以获取后续命令的阶段 ID。或者运行 sf devops pipeline get --pipeline-id 0XB000000000001。
  4. 配置每个阶段。每个阶段需要分支和环境。从右向左配置阶段,因为最后一个阶段必须有分支,然后才能配置之前的阶段。

    将分支添加到集成阶段。如果不存在分支,--create-vcs-branch 标志会在存储库中创建分支。

    sf devops stage branch add --target-org my-devops-org --pipeline-id 0XB000000000001 --stage-id 0Xc000000000005 --branch-name integration --create-vcs-branch

    将 Sandbox 环境添加到阶段。

    sf devops stage environment add --target-org my-devops-org --pipeline-id 0XB000000000001 --stage-id 0Xc000000000005 --environment-name Integration_Org --org-type Sandbox

    将打开浏览器窗口,以便您可以对环境进行身份验证。将 --org-type Production 用于生产组织。在无头环境中,添加--no-browser,并按照命令返回的身份验证说明进行操作。

    为每个阶段重复分支和环境命令。使用适合每个阶段的分支名称、环境名称和组织类型。

  5. 激活漏斗。
    重要
    重要 在通过漏斗阶段升级更改后,您无法对其进行修改。在运行此命令之前,请确保所有阶段都配置正确。
    sf devops pipeline update --target-org my-devops-org --pipeline-id 0XB000000000001 --activate
  6. 将 DevOps Center 项目附加到漏斗。
    sf devops pipeline project add --target-org my-devops-org --pipeline-id 0XB000000000001 --project-id 0Hn000000000001
    漏斗准备就绪。在 DevOps Center UI 中创建工作项目或运行 sf devops work-item create 命令。

管理工作项目

通过启动工作项目、提交您的更改、创建审核并标记准备升级的工作项目来完成开发周期。

您可以在所有工作项目和查看命令中传递--work-item-id而不是--work-item-name。

  1. 将工作项目状态设置为进行中。DevOps Center 会为工作项目创建功能分支。
    sf devops work-item update --target-org my-devops-org --work-item-name WI-000042 --status "In Progress"
  2. 从连接的存储库中获取功能分支,并在本地项目中签出。
    git fetch origin
    git checkout WI-000042
  3. 从开发组织中检索更改。本示例使用别名 my-sandbox 从组织检索 Apex 类。
    sf project retrieve start --target-org my-sandbox --metadata ApexClass:MyNewClass
  4. 查看检索到的文件,暂存它们,提交它们,并推送功能分支。
    git status
    git add force-app
    git commit -am "Implement new feature"
    git push origin WI-000042

    如果 Salesforce DX 项目使用不同的软件包目录,请调整传递给git add的路径。

  5. 创建变更请求(拉取请求),将功能分支合并到目标分支中。
    sf devops review create --target-org my-devops-org --work-item-name WI-000042
  6. 等待团队批准并合并变更请求。
  7. 更新工作项目状态,以表示准备升级。
    sf devops work-item update --target-org my-devops-org --work-item-name WI-000042 --status "Ready to Promote"

升级工作项目

将工作项目升级到下一个漏斗阶段。DevOps Center 验证升级,运行为目标阶段配置的测试套件,并在测试通过时部署更改。

  1. 使用工作项目 ID 和目标阶段 ID 升级工作项目。
    sf devops promote --target-org my-devops-org --work-item-id 0Wx000000000042 --target-stage-id 0Xc000000000002

    命令输出包含请求 ID。使用它来检查促销状态。

    Status: Completed
    Message: Work items successfully promoted to UAT.
    Request ID: a0B000000000001
    
    Promoted Work Items
    ───────────────────
    0Wx000000000042
  2. 使用请求 ID 检查促销状态。
    sf devops request status --target-org my-devops-org --request-token a0B000000000001

当请求状态完成时,工作项目在目标阶段可用。

常用任务

在日常开发工作流中使用这些命令。

  1. 将多个工作项目升级到相同阶段。为每个工作项目指定一次--work-item-id。
    sf devops promote --target-org my-devops-org --work-item-id 0Wx000000000042 --work-item-id 0Wx000000000043 --target-stage-id 0Xc000000000002
  2. 将外部合并的更改部署到与 DevOps Center 不同步的阶段。
    sf devops promotion complete --target-org my-devops-org --target-stage-id 0Xc000000000002

高级用例

在完成基本工作流后,将这些命令用于需要更多控制的促销。

  • 自定义促销:运行sf devops work-item prepare创建所需的分支和变更请求,然后升级工作项目。
  • 组合工作项目:在多个工作项目共享元数据或具有依赖性且必须一起升级时运行sf devops work-item combine。
  • 在升级前验证:运行sf devops promotion validate检查版本控制和对象权限,而不升级工作项目。
 
正在加载
Salesforce Help | Article