探索不同的 CI/CD 方法
到目前为止,你已经了解了两种为云原生应用支持 CI/CD 的方法。 你已手动将应用部署到 AKS,并使用 GitHub Actions 生成和部署了该应用。 Microsoft 支持第三种方法:Azure Pipelines。 这两种自动化方法都是有效的;请选择最符合你的需求的方法。
GitHub Actions 和 Azure Pipelines 有何不同?
首先,让我们看看这两种方法的相同之处。 GitHub Actions 和 Azure Pipelines 都是 CI/CD 工具。 它们都支持:
- 生成和部署应用。
- YAML 文件(用于定义生成和部署应用的步骤)。
- 触发器(用于启动生成和部署过程)。
- 监视生成和部署过程。
- 回滚部署。
对功能的不同支持级别是两种方法的不同之处。 让我们看看这些差异。
GitHub 操作 | Azure Pipelines |
---|---|
对公共存储库免费 | 对开放源代码项目免费 |
对专用存储库每月最多 2000 分钟免费 | 对专用存储库每月最多 1800 分钟免费 |
限制为 20 个并发作业 | 限制为 10 个并发作业 |
Azure Pipelines 比 GitHub Actions 更有优势,因为它支持许多不同的源存储库。 Azure Pipelines 支持 GitHub、GitHub Enterprise Server、Bitbucket Cloud、Azure Repos Git 和 TFVC、Subversion 以及外部 Git。 GitHub Actions 仅支持 GitHub。
如果有更复杂的 CD/CD 工作流,可以缩放 Azure Pipelines 以支持需求。 Azure Pipelines 支持多个阶段、多个作业和多个步骤。 GitHub Actions 仅支持包含多个步骤的单个作业。 这种灵活性可以与自动化测试方案相结合。
注意
在 DevOps 中创建新项目时,免费 Azure Pipeline 分钟数可能不可用。 若要请求免费并行度授予,请填写并行度请求表单。 需要在完成下一个练习之前执行此操作。
禁用 GitHub Actions
查看差异后,你决定将应用更改为使用 Azure Pipelines。
转到你的分叉存储库(在 Actions 选项卡上)。
选择左侧的 Build and deploy an app to AKS 工作流。
选择右上角的“更多选项”菜单。
选择“禁用工作流”。
你已禁用 GitHub Actions 工作流。 现在,你将创建一个 Azure 管道来生成和部署应用。