通过Java测试构建流水线,自动化进行检出代码、编译构建、运行单元测试、输出结果记录、测试统计等能力,减少人工干预,增强项目可见性,并且有效的日志能够帮助开发者更容易发现并解决存在问题。
步骤一:新建测试构建流水线
登录流水线Flow服务控制台,在控制台界面,请单击右侧上方新建流水线按钮。
在弹出窗口页面,选择Java测试构建流水线模板,单击创建按钮。
步骤二:配置流水线源
添加流水线源,根据需求选择合适的代码项目,此示例选择示例代码源Java,添加完成。
步骤三:配置测试构建
在流水线任务节点操作界面,请单击Java代码扫描或者Maven单元测试任务节点,在弹出的右侧编辑页面,配置基本参数。
参数
说明
任务名称
自定义任务名称。
构建集群
根据需求选择合适的默认公共或者私有构建集群。
构建环境
根据需求选择合适的构建环境。
说明任务执行期间,流水线任务构建环境分配给用户使用,构建环境使用权限归属用户,任务执行脚本由用户自定义。
下载流水线源
根据需求选择下载流水线源的不同方式。
在任务步骤配置项,配置Java代码规约扫描任务相关参数。
参数
说明
步骤名称
自定义步骤名称。
JDK 版本
根据项目需求选择合适的Jdk版本。
Maven 版本
根据项目需求选择合适的Maven版本。
开启增量扫描模式
如果未开启增量扫描模式,将对全量代码进行扫描。
使用自定义规则目录
如果开启此项,将会使用您代码库中的p3c规则文件,可以配置自定义规则目录。
规则集合
如果未开启使用自定义规则目录,可以选择合适的默认规则。
子目录
需要扫描的代码所在目录,不设置默认使用代码库的根路径。
排除子目录
需要被排除在扫描范围之外的目录或文件,可参考gitignore配置(例如test/)。
红线信息
根据条件设置判定本任务是成功还是失败。
在任务步骤配置项,配置Maven单元测试任务相关参数。
参数
说明
步骤名称
自定义步骤名称。
JDK 版本
根据项目需求选择合适的Jdk版本。
Maven 版本
根据项目需求选择合适的Maven版本。
测试命令
根据需求设置mvn可执行命令。
测试报告目录
测试报告目录为测试命令执行后生成的测试报告所在目录(例如target/site)。
测试报告入口文件
测试报告入口文件为测试报告入口文件名称(例如surefire-report.html)。
红线信息
根据条件设置判定本任务是成功还是失败。
在流水线任务节点操作界面,请单击Java构建上传任务节点,在弹出的右侧编辑页面配置参数,查看任务步骤配置项Java构建任务,根据项目需求配置合适的构建命令。
说明构建命令为用户自定义构建命令。支持多版本的Maven,命令执行目录为代码库根路径。
如何设置构建依赖下载访问凭证,请参阅设置依赖下载访问凭证。
在任务步骤配置项,配置构建物上传任务参数,提供以下两种方式可供选择。
企业私有通用制品仓库
选择配置企业私有通用制品仓库(制品将上传Packages统一管理)上传方式。
参数
说明
步骤名称
自定义步骤名称。
上传方式
根据需求选择合适的。
仓库
添加服务资源的链接,选择自定义的仓库。
制品名称
自定义构建物的名称,例如target1,用于区分多次构建产生的不同产出物,定义后在部署组件使用,建议使用动态变量形式设置。
制品版本
版本用于唯一标识您的制品文件,因此同一制品不允许推送重复版本。
说明建议使用动态变量形式,比如:${DATETIME}。
打包路径
设置起始位置为项目文件夹的相对路径(如"target/"),可以设置多个文件路径。
制品中包含打包路径的目录
如果选中,则生成的压缩包中,包含完整的打包路径,否则仅包含文件。
说明当选择设置了多个打包路径时,该值自动设置为true选中状态。
任务配置参数参考图。
说明关于通用制品仓库,具体操作请参阅制品管理。
归档至云效公共存储空间
选择配置归档至云效公共存储空间(供后续任务拉取并部署)上传方式。
参数
说明
步骤名称
自定义步骤名称。
上传方式
根据需求选择合适的。
制品名称
自定义构建物的名称,例如target1,用于区分多次构建产生的不同产出物,定义后在部署组件使用,建议使用动态变量形式设置。
打包路径
设置起始位置为项目文件夹的相对路径(如"target/"),可以设置多个文件路径。
制品中包含打包路径的目录
如果选中,则生成的压缩包中,包含完整的打包路径,否则仅包含文件。
说明当选择设置了多个打包路径时,该值自动设置为true选中状态。
步骤四:运行并查看目标流水线任务
在流水线Flow控制台界面我的流水线列表,单击目标流水线右侧运行按钮,再单击目标流水线名称,查看流水线任务节点界面。
运行流水线任务完成后,在构建镜像任务节点,右下方单击日志,可以查看到流水线任务的执行过程结果日志。
在制品仓库查看上传的构建物。