找回密码
 立即注册
搜索

流水线构建矩阵实践分享

sx_lityliao 2024-7-22 14:09:35

 

01
构建矩阵介绍


构建矩阵(Matrix Job)是一种在流水线中定义和执行多配置项目的方式,允许您为构建、测试和部署项目创建多种配置。通过配置Matrix,可以定义多个构建选项,例如操作系统、编译器、测试框架等。使得可以轻松地为不同的环境(如开发、测试和生产)创建不同的构建配置。


比如:需要同时发布PC端和移动端,并且同时发布两个终端的多个版本。  则可以定义一组Matrix,

{OS:‘PC’, ‘phone’}

{version: ‘5.0’, ‘6.0’}

这将生成4种不同的构建配置,每种配置都有不同的操作系统和编译器。

1)PC端5.0版本发布

2)PC段6.0版本发布

3)移动端5.0版本发布

4)移动端6.0版本发布


通过使用Matrix,您可以在一条流水线中轻松地管理和组织多个构建配置,以满足项目的不同需求。提高构建的灵活性和可维护性,并使您能够更好地控制项目的构建和部署过程。


02
使用分享


 在【构建环境】中勾选启用Matrix Job,该构建环境Job出现矩阵标识

1.png

 根据需求,在【矩阵】中填写配置参数进行矩阵计算,流水线执行时将根据参数组合实例化多个Job,值格式为 Object<String, List<String>>,YAML语法。配置示例:

PLATFORM:  [ linux, windows, mac ]  

BROWSER:  [ firefox, chrome, safari ]

执行时将实例化以下组合:

     [PLATFORM=linux, BROWSER=firefox]

     [PLATFORM=windows, BROWSER=firefox]

     [PLATFORM=mac, BROWSER=firefox]

     [PLATFORM=linux, BROWSER=chrome]

     [PLATFORM=windows, BROWSER=chrome]

     [PLATFORM=mac, BROWSER=chrome]

     [PLATFORM=windows, BROWSER=safari]

     [PLATFORM=mac, BROWSER=safari]

     [PLATFORM=windows, BROWSER=safari]

2.png

 

  除填写固定参数值外,矩阵可引用变量 '${变量名}'

3.png

 执行结果均在Matrix job中,每个job显示参数组合名称,且可单独查看日志

de544782193549674c516b26ccab9b31.png

7e22fbbac9c44dfe7fa17160dc634608.png

 可以在参数矩阵的基础上增加参数组合,或者给其中一组参数增加额外的属性,值格式为list<object>,YAML语法。比如增加:

PLATFORM:   linux  

BROWSER:  edge  

执行时将增加实例化以下组合:

 [PLATFORM=linux, BROWSER=edge]

6.png

支持排除参数矩阵中定义的一个或多个组合,值格式为list<object>,YAML语法。比如排除:

PLATFORM:   mac  

BROWSER:  firefox  

  执行时将排除实例化以下组合:

     [PLATFORM=mac, BROWSER=firefox]

7.png

 支持设置job的最大并发数

8.png

69684b70206746164111df10d89d8f9b.png

 插件中引用matrix变量,填写格式:${matrix.变量名}

10.png

 

您需要登录后才可以回帖 立即登录
共收到 0 条点评
返回顶部