作为开发人员,您想要持续集成来自 GitHub 存储库或 GitLab Enterprise 存储库的代码。每次开发人员更新其代码并提交存储库更改时,Code Stream 可以侦听这些更改并触发管道。

从代码签入到在 Kubernetes 集群上部署应用程序的工作流可以使用 GitHub、Code Stream、Docker Hub、适用于 Git 的触发器和 Kubernetes。

要让 Code Stream 在代码发生更改时触发管道,可以使用 Git 触发器。每次提交代码更改时,Code Stream 便会触发管道。

Code Stream 管道工作区支持使用 Docker 和 Kubernetes 执行持续集成任务和自定义任务。

有关配置工作区的详细信息,请参见配置管道工作区

以下流程图显示了使用智能管道模板创建管道或手动构建管道时可以采用的工作流。

图 1. 使用智能管道模板或手动创建管道的工作流
该工作流可帮助您决定使用持续集成管道持续集成代码的过程路径。

以下示例使用 Docker 工作区。

要生成代码,请使用 Docker 主机。您将使用 JUnit 和 JaCoCo 作为测试框架工具并将其包含到管道中,它们将运行单元测试和代码覆盖率测试。

然后,您可以使用持续集成智能管道模板创建持续集成管道,该管道可构建和测试代码并将代码部署到项目团队在 AWS 上的 Kubernetes 集群。要存储持续集成任务的代码依赖关系工件以便在代码生成时节省时间,可以使用缓存。

在生成和测试代码的管道任务中,可以包含多个持续集成步骤。这些步骤可驻留在同一个工作目录中,管道触发时 Code Stream 会将源代码克隆到该目录。

要将代码部署到 Kubernetes 集群,可以在管道中使用 Kubernetes 任务。之后,必须启用并运行管道。然后,对存储库中的代码进行更改,并观察管道触发器。要在管道运行之后监控并报告管道趋势,请使用仪表板。

在以下示例中,要创建将代码持续集成到管道的持续集成管道,请使用持续集成智能管道模板。此示例使用 Docker 工作区。

(可选)可以手动创建管道,并向其添加阶段和任务。有关计划生成持续集成和手动创建管道的更多信息,请参见在手动添加任务之前在 Code Stream 中规划 CICD 本地构建

前提条件

过程

  1. 遵循必备条件。
  2. 要使用智能管道模板创建管道,请打开持续集成智能管道模板并填写表单。
    1. 单击管道 > 新建管道 > 智能模板 > 持续集成
    2. 回答模板中有关源代码存储库、生成工具集、发布工具和生成映像工作区的问题。
    3. 添加要向团队发送的 Slack 通知或电子邮件通知。
    4. 要让智能管道模板创建管道,请单击创建
    5. 要对管道进行任何进一步更改,请单击编辑,进行更改,然后单击保存
    6. 启用并运行管道。
  3. 要手动创建管道,请将各个阶段和任务添加到画布中,并在持续集成任务中包括本地持续集成构建信息。
    1. 单击管道 > 新建管道 > 空白画布
    2. 单击相关阶段,从导航窗格将多个持续集成任务拖动到该阶段。
    3. 要配置持续集成任务,请单击该任务,然后单击任务选项卡。
    4. 添加用于持续集成代码的步骤。
    5. 包括依赖关系工件的路径。
    6. 添加导出位置。
    7. 添加要使用的测试框架工具。
    8. 添加 Docker 主机和生成映像。
    9. 添加容器注册表、工作目录和缓存。
    10. 保存管道,然后将其启用。
  4. 更改 GitHub 存储库或 GitLab 存储库中的代码。
    Git 触发器将激活管道,该管道开始运行。
  5. 要验证代码更改是否触发了管道,请单击触发器 > Git > 活动
  6. 要查看管道的执行,请单击执行,然后验证相应的步骤是否已创建并导出生成映像。
    管道执行显示保留工件的路径以及已导出映像的值。
  7. 要监控管道仪表板以便可以跟踪 KPI 和趋势,请单击仪表板 > 管道仪表板

结果

恭喜!您已创建一个管道,该管道可持续将来自 GitHub 存储库或 GitLab 存储库的代码集成到管道中并部署构建映像。

下一步做什么

有关更多信息,请参见供 Code Stream 管理员和开发人员使用的更多资源