工作流的触发

    手动触发的两个入口:

    • 工作流列表页
    • 工作流详情页入口

    点击列表中工作流右侧对应的按钮,启动工作流。

    工作流启动入口-工作流详情页

    点击工作流操作中的执行按钮,启动工作流。

    工作流详情页

    从以上两个入口点击执行按钮之后,都会弹出启动工作流,如下图所示。

    参数说明:

    • :选择此次任务所要更新的环境。
    • 服务:选择此次任务更新的服务组件名称,支持在一次工作流任务中更新多个服务组件。
    • 代码选择:用户完成选择服务后,可以自由选择代码信息,Zadig 提供四种代码构建方式:
      • 选择某个 Branch,系统会拉取该 Branch 的代码进行构建。
      • 选择某个 pull request,系统会拉取该 pull request 的代码进行构建。
      • 选择 Tag 构建,系统会拉取该 Tag 的代码进行构建。
    • :构建和测试脚本中设置的自定义变量,在启动工作流时候可以传入具体的值。

    在工作流中添加触发器配置后,会在对应的代码托管平台创建 Webhook。当出现满足触发条件的代码变更时,会自动触发运行工作流。目前支持以下 3 个代码托管平台:

    • GitHub:在工作流中配置触发器后,会自动在 GitHub 平台创建 Webhook。
    • GitLab:在工作流中配置触发器后,会自动在 GitLab 平台创建 Webhook。
    • Gerrit:需要先在 Gerrit 上安装 Webhook 插件支持,再在工作流中配置触发器。具体安装可参考,插件安装成功后效果图示如下:

    为工作流配置触发器包括 GUI 方式YAML 配置文件方式,下面展开介绍。

    GUI 方式

    在工作流界面中实现触发器的配置,配置过程更直观,可指定代码变更分支(一个分支或通过正则表达式匹配多个分支)、触发事件等。具体配置请参考 。

    将触发器配置组织在代码库的 YAML 文件中,在 YAML 文件中设置相关触发条件和工作流执行策略,在 Zadig 工作流触发器配置中填写 YAML 文件的路径即可。具体配置请参考 YAML 配置文件方式配置触发器

    工作流触发器配置

    触发效果

    配置完成后,根据配置提交 pull request、merge request 或者 push 可触发工作流,以 GitLab 为例,在 merge request 中可以查看工作流的反馈信息,如下所示。

    注意

    Pull request 独立测试环境验证功能目前仅支持 GitLab 代码仓库触发

    Pull request 级持续交付分为以下步骤:

    • 提交更新的 pull request 代码
    • 根据选择的基准环境生成一个相同服务版本的临时环境
    • 根据环境销毁策略对测试环境进行回收操作

    具体配置如下图所示:

    workflow

    提交代码变更,在对应 pull request 下可看到关于独立环境的状态信息:

    创建的独立环境效果如下:

    workflow

    可以通过工作流的定时器功能来实现工作流的定时触发。具体配置请参阅定时器

    通过 OpenAPI 接口调用来触发工作流,具体操作请参阅。