Salesforce CI/CD 集成:快速指南

言鼎科技 2023-06-30 252

CI/CD 一直是 DevOps 的核心,现在这些软件工程实践已经真正改变了 Salesforce 生态系统的游戏规则。如今,与Salesforce的持续集成已经成为云平台界最受关注的话题。那么为何不?当您更快地构建、测试和发布代码时,这些实践允许更可靠的开发和发布周期。

如今,Salesforce 已成为全球许多大大小小的组织不可或缺的一部分。然而,它是最强大的工具之一,但我们不要忘记它有其自身的挑战。尽管项目变得越来越重要,时间越来越少,但客户仍然期望项目能够按时交付并具有先进的特性和功能,这是传统的销售人员部署流程完全不可能实现的。

但这并不意味着 Salesforce 做不到。这个 CRM 平台不遗余力地提供高效和优质的产品。那么解决方案是什么?在这里, Salesforce 的CI/CD实施出现了。

CI/CD 并不是一个新的流行语;它是最著名的 DevOps 实践之一,它通过更快地交付开发和更低的风险来简化发布周期。要高效、自信地构建、运行和测试销售人员应用程序,CI/CD 是最佳实践。

此博客将指导您完成完整的Salesforce CI/CD 集成。但是,在深入探讨如何使用 Salesforce 设置 CI/CD 流程之前,了解什么是 CI/CD 是必不可少的?

因此,事不宜迟,让我们开始吧-

什么是持续集成?

许多组织将持续集成与持续开发、持续任命等重叠。所以在这里我们描述了持续集成到底是什么的一般定义?

持续集成或 CI 是您设置的一个过程,以确保您对系统所做的每一个小更改都与系统的其余部分兼容。因此,当您对系统进行更改时,您将在安全可靠的环境中部署用户的主要两个参数。

持续集成是一种确保您所做的工作在整个应用程序中有效的方法。这种软件开发实践允许开发人员定期将他们的更改代码集成到源代码存储库中。在开发人员将新代码放入系统之前或之后运行自动构建和测试,以保护源代码免受外部威胁。

简而言之,持续集成 (CI) 可以让开发人员-

  • 经常将代码推送到代码仓库(Github、Bitbucket、CodeCommit等)

  • 一旦代码通过 codebuild、Jenkins CI、Circle CI 等发布,测试或构建服务器就会检查代码。

  • 开发人员获得有关测试的反馈并检查代码是通过还是失败。

  • 如果存在错误,尽早发现并在快速周转时间内修复它们。

  • 代码经过测试后交付速度更快

  • 经常部署

CI 导致 – “更快乐的开发人员,因为他们不受阻碍。”

继续,让我们看看什么是持续交付?

什么是持续交付?

持续交付是一种软件工程方法,其中团队在短周期内生产软件,确保软件可以在需要时可靠地发布。它还确保部署快速进行,因为开发人员希望从每三个月发布一个版本转变为一天发布五个版本。如果你有持续交付的东西,你一天只能做 5 次发布。这意味着部署将完全自动化。

持续交付管道如何工作?

  • 开发人员会经常将代码推送到代码存储库。

  • 构建服务器将获取代码并构建和测试它。

  • 然后,部署服务器,在构建服务器完成后,将获得构建输出,并可以将新版本从 V1 部署到 V2 和更高级别的应用程序服务器。

这就是持续交付的工作原理。

继续,让我们讨论

如何将 CI 与 Salesforce 集成?

要将 CI/CD 与 Salesforce 集成,市场上有许多第三方工具,您可以从中选择适合您业务需求的工具。Salesforce 可以轻松地与这些工具集成,帮助您顺利轻松地进行 Salesforce CI/CD 集成

使用 CircleCI 进行持续集成

CircleCI 平台使您对代码的信心自动化。它构建、测试并有效地部署软件。该平台是一个常用的集成工具,可以与您现有的版本系统进行集成。这是因为要将您选择的增量更新推送到环境。该企业解决方案可以轻松安装在您的私有云、数据中心或本地工具中。它可以在有限的时间内免费使用。

使用 Jenkins 进行持续集成

Jenkins 是用 Java 编写的持续集成服务器的开源实现。该服务器高度兼容多种语言,可以运行在各种平台上,包括Linux、Windows和macOS。如果您计划针对 scratch org 测试 salesforce 应用程序,您可以轻松地将 salesforce DX 集成到 Jenkins 框架中并自动执行应用程序测试。

与 Travis CI 的持续集成

Travis CI 是一种有效的基于云的集成服务,可让您的开发人员自信地测试和部署代码。使用 Travis CI,您可以在几分钟内测试您的代码,您只需要将您的项目与此集成平台同步,它会快速测试您的代码。

组织开发模型的样本 CI 回购

使用示例 CI 存储库,您可以轻松地克隆所选供应商的示例存储库。示例 CI 中的每个 repo 都带有一个独特的示例配置文件和一个带有逐步信息的详细 README.md。

与 Gearset 的持续集成

Gearset 是一个出色的 DevOps 工具,它提供了一个简单、快速和点击可配置的解决方案,使 CI/CD 设置和维护具有高度可扩展性和可管理性。

在这篇博客中,我们将学习使用 CircleCI 将 CI/CD 与 Salesforce 集成。

什么是 CI 流水线?

如果您是 CircleCI 的初学者,让我们帮助您快速了解 CI 如何帮助您改进开发工作流程。

CircleCI 是一个强大的平台,可以自动化对代码的信心。它可以让您更快地构建、测试、运行和编码。CircleCI 管道将帮助您更改应用程序并在部署前快速测试它们。如果您的测试通过或失败,它会立即让您使用。一旦您对代码感到满意,您就可以手动或自动将更改部署到您的用户。

如何设置 CI 流水线?

要开始创建 CI 管道,您需要先设置一些任务 -

1. 设置一个 DevOps 账户
2. 创建你自己证明的 SSL 证书和私钥
3. 对于基于 JWT 的授权,你需要创建一个证书;Salesforce 将保留证书,而 CircleCI 将保留私钥。
4. 在开始管道之前,您必须创建一个连接的应用程序,它连接云环境中的 salesforce 实例。

要创建连接的应用程序,您可以按照 Salesforce 站点上提供的步骤进行操作。

1.用Salesforce存储server.crt文件
2.将server key添加到CircleCI
3.Markdown开发应用给的consumer key

如果您想要由 VCS 提供商托管的 salesforce 应用程序项目,请选择 GitHub 或 BitBucket。在 GitHub 上托管项目后,您就可以开始组装管道了。

将项目添加到 CircleCI

该项目仍处于开发阶段;要完成该项目,您需要-

1. 添加 CircleCI 配置文件
2. 使用 CircleCI 授权您的 VCS,即 GitHub 或 BitBucket,然后登录
3. 您将被重定向到仪表板
4. 在仪表板上,单击“添加项目”,项目列表来自您的帐户将显示在您的屏幕上
5. 单击您的销售人员应用程序的“设置项目”
6. 单击“开始构建”。

如果您的工作失败,请不要担心,这是预料之中的。现在我们需要添加一个带有集成和设置环境变量的配置文件。

如何添加环境变量?

要添加所需的环境变量,请按照下列步骤操作 -

1. 你会看到一个导航栏,在屏幕的左边,会有你之前添加到 CircleCI 的项目列表。
2. 你会在他们旁边看到一个齿轮。
3. 单击您的 salesforce 应用程序旁边的齿轮以转到设置页面。
4. 在设置页面上,您会看到一个选项“build settings”。
5. 单击构建设置下的环境变量。

我们已经在前面的步骤中创建了消费者密钥。现在我们只需要添加名称为 SFDX_CONSUMER_KEY 的新环境变量和来自 Salesforce 的值。

对于身份验证,您需要添加两个突出的环境变量:

  • SFDX_JWT_KEY

  • SFDX_CONSUMER_KEY

1. 要获取使用 JWT 密钥编码的 Base64,您必须将目录导航到您在前面的步骤中创建的自证明证书文件。
2. 导航之后,点击这个命令-base64 server.key
3. base64编码的值,现在将其复制并添加到JWT key下的项目环境变量中。

现在是时候添加您的配置了。

添加配置

CircleCI 通过 Salesforce 认证,这意味着您可以在配置中使用 salesforce DX apex orb 命令。

1. 在项目存储库中,添加一个顶级 .circleci 文件夹,
2. 创建一个 config.yml 文件。
3. 创建 config.yml 文件后,让我们开始从 SFDX Apex orb 复制包含的用法示例。

Salesforce CI/CD 集成:快速指南
版本:2.1
 球体:
   顶点:circleci/ salesforce-apex@xy
 工作:
   安装验证:
     码头工人:
       - 图片:cimg/节点:14.5
     脚步:
       - 查看
       - 顶点/设置:
          默认用户名:user@email.com
       - 跑步:
           名称:在此处运行您的 SFDX 命令
           命令: |
             echo “您现在可以访问 sfdx cli 并可以对其执行命令。https://developer.salesforce.com/docs/atlas.en-us.sfdx_cli_reference.meta/sfdx_cli_reference/cli_reference.htm”
 工作流程:
   基本测试:
     工作:
       - 安装验证

访问“orbs”需要 CircleCI 配置的 2.1 版。

  • 以后要更新东西,最好设置配置的版本。

  • 要定义和导入 orb 包,请使用 orbs 节。

  • 访问 orb 注册表以查看最新的文档并导入最新的 orb 版本。

Orbs 可以在完整版本中导入,但我们建议使用次要版本。它将帮助您自动选择补丁版本。

工作

orb 导入后,您会发现 JOB STANZA 中有一个作业。

它以名称提供:install_authenticate

它看起来像这样——

工作:
install_authenticate:

在这里你可以手动定义你的配置文件。

码头工人形象

CircleCI 带有预构建的 docker 镜像。这些映像已预安装 NodeJS,这使您可以使用 Salesforce CLI 安装节点版本。您不需要单独安装节点和 npm。

看起来像-

泊坞窗:
-图像:cimg/节点:14.5

工作流程

工作流是 CircleCI 的突出特点,它可以让你调整你想要运行的作业和运行顺序。如果您在工作流中只有一个作业,则可以高效地运行它。

例如 - 创建一个名为 basic-test 的工作流并列出 install_authenticate 作业。

看起来像-

工作流程:
基本测试:
工作:
- install_authenticate

所以像这样,您可以轻松地将您的 Salesforce 应用程序与 CI/CD 集成。不过,如果您有任何疑问,请随时联系经验丰富的销售团队开发人员。

您准备好进行 Salesforce CI/CD 集成了吗

Salesforce 持续集成和持续部署可实现更快的高质量软件交付和满意的业务客户。因此,如果您希望将您的业务提升到一个新的水平,Salesforce CI/CD 集成是正确的做法。

如果您正在寻求帮助,我们随时为您提供帮助。我们是一家领先的销售人员开发公司,在提供一流的销售人员解决方案方面拥有 9 年以上的丰富经验。无论您的企业规模如何,我们都将为您提供最佳实施、集成和Salesforce 咨询服务。

言鼎科技

The End