更新时间:2026-04-07 GMT+08:00
分享

配置事件触发

YAML流水线事件触发有两种配置方式:一种是流水线源仅包含一个代码源,另一种是流水线源包含多个代码源。这两种方式在层级上有所不同,但除此之外没有其他差别。

流水线源仅包含一个代码源

流水线源仅包含一个代码源时,不需要指定具体代码仓,默认关联到唯一的代码源。并且可以直接在on.merge_requests、on.push、on.tag_push中配置事件触发。

on:
    merge_requests:                               #MR事件触发
      types: [ merge, open, reopen, update ] 
      branches: [ 'master' ]
      branches-ignore: [ 'test' ] 
      paths: [ 'test' ] 
      paths-ignore: [ 'test2' ] 
      code-update: true  
    push:                                         #代码提交事件触发
      branches: [ 'master' ]
      branches-ignore: [ 'test' ] 
      paths: [ 'test' ]
      paths-ignore: [ 'test2' ] 
      tags: [ 'master' ]                          #创建Tag触发
      tags-ignore: [ 'test' ]      
表1 参数解释

参数名

说明

merge_requests

定义合并请求事件触发配置。

branches

分支包含。branches和branches-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

branches-ignore

分支排除。branches和branches-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

paths

路径包含。

paths-ignore

路径排除。

types

事件触发类型,共包含以下五种。

  • open:新建,合并请求创建时触发。
  • merge:合并,合并请求合入时触发,该事件会同时触发代码提交事件。
  • reopen:重新打开,合并请求重新打开时触发。
  • update:更新,合并请求内容更新、设置更新或者源代码更新时触发。
    • code-update:仅代码更新时触发,types选择update时生效。true表示只有代码变更会触发;false表示任何变更会触发。

push

定义代码提交事件触发。

tags

创建Tag触发。Tag包含。tags和tags-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

tags-ignore

创建Tag触发。Tag排除。tags和tags-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

流水线源包含多个代码源

流水线源包含多个代码源时,需要在on.sources_identifier下配置。identifier为源的唯一标识。

on:
  sources: 
    phonix_sample:                                      #源唯一标识
      merge_requests:                                   #MR事件触发
        types: [ merge, open, reopen, update ] 
        branches: [ 'master' ]
        branches-ignore: [ 'test' ] 
        paths-ignore: [ 'test2' ] 
      push:                                             #代码提交事件触发
        branches: [ 'master' ]
        branches-ignore: [ 'test' ] 
        paths-ignore: [ 'test2' ] 
        tags: [ 'master' ]                              #创建Tag触发
        tags-ignore: [ 'test' ] 
表2 参数解释

参数名

说明

sources

多代码源场景下事件触发的配置。

phonix_sample

流水线源唯一标识,和sources下配置的代码源映射,不可配置产物源。仅支持大小写英文字母、数字、下划线,长度不超过128个字符。

merge_requests

定义合并请求事件触发配置。

branches

分支包含。branches和branches-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

branches-ignore

分支排除。branches和branches-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

paths

路径包含。

paths-ignore

路径排除。

types

事件触发类型,共包含以下五种。

  • open:新建,合并请求创建时触发。
  • merge:合并,合并请求合入时触发,该事件会同时触发代码提交事件。
  • reopen:重新打开,合并请求重新打开时触发。
  • update:更新,合并请求内容更新、设置更新或者源代码更新时触发。
    • code-update:仅代码更新时触发,types选择update时生效。true表示只有代码变更会触发;false表示任何变更会触发。

push

定义代码提交事件触发。

tag_push

定义创建Tag触发。

tags

创建Tag触发。Tag包含。tags和tags-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

tags-ignore

创建Tag触发。Tag排除。tags和tags-ignore的总数不能超过32个,且单个长度不得超过1024个字符。

相关文档