引言
随着 DevOps 的普及,持续集成和持续部署(CI/CD)已成为现代软件开发不可或缺的一部分。Copado 是一款强大的工具,可以帮助团队自动化代码部署流程,提高效率并减少错误。本文将详细讲解如何使用 Copado 设置 CI/CD 管道,从创建管道到配置环境,一步步带你完成整个过程。
Copado基本概念
1. 创建管道记录
首先,你需要创建一个管道记录,这将启动pipeline wizard。管道是一系列组件列表,定义了在发布管理过程中组件将通过的路径。每当你在与pipeline关联的Project下使用User Story工作时,Copado 将知道要部署到哪个新环境。管道连接的是从Source Org 到Destination Org 的路径。当你使用分支管理时,管道连接还持有环境的 Git 分支。目标分支将由 Copado 推断。
2. 认证中心卓越组织
下一步是认证你的中心卓越组织(即安装了 Copado 的 Salesforce 组织,也称为Governance org 或main org)。Copado 通过连接每个环境来编排环境中所有的元数据更改。Credential是User和Org之间的连接。Credential通过 OAuth 协议进行身份验证,在此过程中不会交换密码。因此,即使你更改了 org 的密码或安全令牌,与 Copado 的连接仍然有效。重要的是,第一个需要验证的Crdential必须属于安装了 Copado 的组织。一旦认证完成,将为你的用户创建一个新的 Copado API 密钥。API 密钥是一个传递给 API 以识别发出请求的应用程序或用户的唯一代码。在 Copado 中,API 密钥允许安全地安排和验证 Copado 服务器上的操作。API 密钥对 Salesforce 用户来说是唯一的。
此外,当Credential被认证时,Copado 会自动创建一个Environment记录。在 Copado 中,Environment代表一个 Salesforce Org。Org ID 将是External ID,这意味着一个环境可能有多个Credential和同一组织的不同用户。默认情况下,Environment名称将在创建时获得Credential名称,但之后你可以更新它。记住,Environment不能手动创建。Copado 会自动从第一个被认证的Credential中创建一个Environment。
3. 分配 Copado License
接下来的步骤是为你的用户分配一个 Copado License。这些License独立于 Salesforce Package License。虽然 Copado Deployer License授予你访问 Copado 组件的权限,但 Copado User License允许你执行与 Copado 相关的操作,如提交或部署。
4. 连接 Git 仓库
现在,你需要将 Git 仓库连接到 Copado。你将被要求用用户名和密码或 SSH 密钥进行身份验证。你必须定义存储库的基本 URL,以便你可以直接从 Copado 快速访问分支、提交和拉取请求。定义Base URL 时,只需填写用户名和存储库名称字段即可。URL 结构将根据所选的 Git 提供商预先填充。
可选地,你可以选择一个管道模板,该模板将预定义你的初始管道连接。你可以跳过这一步并在稍后手动创建它。
5. 认证生产环境连接
你将被要求认证你的生产环境连接,以便 Copado 可以为你的生产环境创建一个 Git Snapshot记录,并在你的主分支上运行快照以初始化你的存储库和所有元数据。Copado 中的 Git Snapshot记录定义了 Salesforce org 和 Git 存储库分支之间的连接。这意味着对于每个环境,你将有一个对应的 Git Snapshot记录。
6. 完成管道设置
一旦你完成了管道创建,你将被重定向到管道页面,该页面显示了当前环境连接的图表。例如:
Pipeline Wizard
1. 开始设置管道
首先,打开 App Launcher 并搜索“Pipelines”标签。点击“New”以创建你的第一个管道。这将启动管道向导,引导你完成整个设置过程。
2. 认证生产环境连接
在认证页面中,请使用主 Org/生产的用户名和密码登录。
Username: demo@copado.com.summer19
Password: [Your Password]
点击“Authenticate”按钮继续。
3. 分配 Copado 许可证
选择你的角色。如果你是发布经理,你将被分配一个 Copado Admin License。
点击“Yes”并继续。
4. 命名管道并选择 Git 仓库提供商
给你的管道命名,并输入存储库名称,然后选择一个 Git 仓库提供商(如 GitHub、GitLab 等)。
点击“Continue”继续下一步。
5. 配置 Git 仓库连接
选择身份验证类型。如果你使用 SSH,复制生成的 SSH 密钥并将其粘贴到 Git 提供商的公钥中。如果你使用 HTTPS,复制 Git URL 并提供 Git 提供商的用户名和密码。
点击“Create SSH Key”生成密钥,并继续下一步。
6. 定义 Base URLs
定义 Base URLs。这些 URL 用于直接从 Copado 访问存储库中的开放提交和合并请求。你需要填写用户名和存储库名称字段。
点击“Continue”继续下一步。
7. 选择合适的管道模板
选择一个合适的管道模板。你可以选择“Basic”、“Standard”或“Advanced”模板,根据自己的需求进行定制。
点击“Save”保存模板。
8. 认证生产环境凭证
认证你的生产环境凭证。如果你已经在生产环境中安装了 Copado,选择“Yes”;否则选择“No”。
点击“Continue”继续下一步。
9. 创建快照记录
点击“Continue”后,Copado 将为你的生产环境创建一个 Git 快照记录,并在你的主分支上运行快照以初始化你的存储库和所有元数据。
10. 完成设置
一旦所有步骤都完成,点击“Continue and Enjoy”按钮,你将被重定向到管道页面,该页面显示了当前环境连接的图表。
访问Pipeline Manager
你可以通过两种方式访问 Pipeline Manager 页面:
- 打开 Pipeline Manager 标签。
- 在管道记录中点击 Manage Releases 链接。
以下是一个示例页面的截图:
Pipeline Manager 的功能
- 快速查看用户故事
你可以一目了然地看到各个环境中提前和滞后计数的用户故事。这在基于用户故事的计算逻辑下特别有用。
- 定义环境连接行为
你可以定义不同环境之间的连接行为,以便安排或自动化部署和回滚操作,或者实现质量门禁,如验证、合规扫描或 Selenium 测试。例如,你可以设置一个规则,当 DEV 环境中的代码通过所有测试后,自动将其部署到 UAT 环境。
- 过滤和共享Environment视图
你可以过滤管道,确定显示哪些环境和用户故事,并与团队成员共享这些过滤器。这样可以确保每个人都专注于当前的工作内容,避免混淆。
- 统一部署操作
你可以从单个页面协调所有的用户故事部署,执行推广、回滚和批量回滚操作,无需在不同页面之间切换。这种统一的操作方式大大提高了工作效率。
- 查看部署状态和环境变量
你可以一目了然地看到最后一次部署的状态,查看与管道关联的所有环境变量,验证每个环境关联的 Selenium 测试组,并查看每个环境的合规扫描结果。这些信息对于监控和调试非常重要。
希望这篇文章能帮助你在实际工作中更好地利用 Copado 实现 CI/CD,提升团队的整体效能。