探索不同的 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。

  1. 转到你的分叉存储库(在 Actions 选项卡上)。

  2. 选择左侧的 Build and deploy an app to AKS 工作流。

  3. 选择右上角的“更多选项”菜单。

    A screenshot showing the Disabled workflow menu option for a GitHub Action workflow.

  4. 选择“禁用工作流”。

你已禁用 GitHub Actions 工作流。 现在,你将创建一个 Azure 管道来生成和部署应用。