跳到主要内容

每次标签推送后发布

了解如何使用Buddy中的标签配置条件流水线触发

Buddy允许您在将标签推送到存储仓时自动构建、测试和发布您的应用程序。本文将告诉您如何在Buddy中配置基于此条件触发的交付流水线。

标签推送发布

部署自动化的第一步是添加一个新项目并选择要从中上传的存储仓。您可以选择GitHub、Bitbucket或GitLab存储仓,以及任何其他自定义Git存储仓:

新建项目

一旦项目同步后,您可以新添流水线。最重要的是将其设置为仅在将新标签推送到存储仓时运行。为此,将触发模式设置为“事件”(自动),选择触发模式设置相应选定标签作为分支,并自定义将触发流水线的 refs/tags 模式。

提示

例如,将模式设置为refs/tags/v*只会部署以v开头的标签,例如:v1v1.1v2,等等。

新添流水线

标签推送构建Docker镜像

在指定何时以及针对哪些标签触发流水线之后,我们就可以定义应该执行的具体内容了。

流水线有以下这些运行步骤:

  1. 对存储仓代码运行单元测试
  2. 从测试代码构建Docker镜像
  3. 运行镜像以检查一切是否正常
  4. 如果上述所有步骤都成功,则将镜像推送到Docker注册中心

流水线示例

运行单元测试

持续集成的核心原则是测试推送(包括标签)到存储仓的每个更改,Buddy允许您在发布之前使用构建操作自动测试您的应用程序,这些构建操作基本上是独立/隔离的测试环境。例如:如果您的应用程序基于Node,您只需要从操作名册中选择"Node.js"并配置其相关信息:

环境自定义

构建Docker镜像

下一步是对应用程序进行Docker化。为此,请从Docker操作区中选择“构建镜像”或“多构建”操作。您需要在此处指定存储仓中的 Dockerfile和构建相关联工件路径(可选): 构建Docker镜像操作配置

运行Docker镜像

现在我们需要确保我们构建的Docker镜像工作正常。为此,我们将使用“运行镜像”操作。该操作允许您在选定的Docker容器中运行命令。确保选择“使用上一个操作构建的docker镜像”,如下图所示:

运行Docker镜像环境设置

推送Docker镜像

最后一步是将镜像推送到注册中心。选择“推送镜像”并配置操作相关信息。Buddy与Docker Hub、Amazon ECR和Google GCR 进行了原生集成。您还可以选择自己的私有注册中心。

提醒

由于我们仅在此流水线中发布标签,因此请确保在“标签”栏中使用 $BUDDY_EXECUTION_TAG 变量。

推送Docker镜像操作配置

参看