流水线以自动化的方式完成代码扫描、人工卡点、数据测试、发布、通知等步骤,实现持续、高效的数据交付。一条流水线中可以包含多个节点,每个节点对应配置一个扩展程序。流水线基于触发事件并根据流水线自身配置,依次触发节点对应的扩展程序执行。
根据提供者的不同,分为 DataLeap 提供的扩展程序、用户自研的扩展程序。目前 DataLeap 提供五个扩展程序,分别为人工卡点、执行发布、触发调试、选择器和 CodeCT。
1 约束限制
仅租户主账号或项目管理员具备管理流水线的全部权限,其他子账号仅可查看流水线。
2 前提条件
已开通湖仓一体、分布式数据自治或 DataOps敏捷研发解决方案。详细操作说明请参见 DataLeap 服务信息。
3 操作步骤
- 登录 DataLeap 控制台。
- 单击左侧导航栏的项目管理,进入项目管理页面。
- 勾选我管理的选项,显示由您管理的项目列表。
- 单击项目列表中要管理项目操作列的任一按钮,进入项目控制台。
- 单击左侧导航栏的流水线管理,进入流水线管理页面。
- 可查看当前项目下的所有流水线信息列表,并执行以下操作:
新建流水线
单击新建流水线按钮,进入新建流水线页面,设置相关信息后,单击保存按钮,完成流水线创建。
新建流水线相关参数说明如下表所示。其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
参数 | 说明 |
---|
基础配置 |
*名称 | 流水线的名称,自行设定。
名称支持中文、字母、数字或下划线,长度不超过50个字符。 |
描述 | 流水线的描述信息,长度不超过200个字符。 |
触发类型 | 触发流水线的实体类型,支持任务和发布包两个选项,默认选中任务。 |
触发事件 | 触发流水线的事件,即指某一个事件发生时,能够自动、定时或手动地去触发流水线的执行。 - 当触发类型为任务时,支持的触发事件为调试、提交,默认选中提交。
- 当触发类型为发布包时,支持的触发事件为发布。
|
触发对象 | 流水线的生效范围。 - 当触发类型为任务时,支持全部任务和部分任务两个选项,默认选择全部任务。
- 当触发类型为发布包时,支持全部发布包和部分发布包两个选项,默认选择全部发布包。
当选择部分任务/发布包时,可设置以下触发对象,支持同时配置多个: - 优先级:等于或不等于某个优先级,支持选项 D1~D5,下拉可选,支持选择多个。
- 任务类型:等于或不等于某个任务类型,支持离线任务、流式任务等多个选项,下拉可选,支持选择多个。
- 任务目录:等于、不等于或包含某个目录,下拉可选已创建的任务目录,支持选择多个。
- 任务名称:等于或不等于某个任务名称,可输入任务名称关键词后下拉选择,支持选择多个。
- 责任人:等于或不等于某个任务责任人,可输入任务责任人关键词后下拉选择,支持选择多个。
- 标签:等于或不等于某个标签,可输入标签关键词后下拉选择,支持选择多个。
|
流水线超时 | 可设置是否流水线运行超时后即认定执行失败。 - 默认选择否,即不开启。
- 当选择是时,需设置超时时间,当流水线运行时长超过设置值,其状态将变为失败。
|
是否开启 | 表示流水线当前所处状态,可选择是否开启该流水线,默认处于关闭状态。 - 开启:即代表该流水线会开启,流水线中配置的内容在符合条件的时候会自动触发。
- 关闭:即代表该流水线会关闭,符合条件的时候也不会触发该流水线的执行。
|
触发后的交互方式 | 触发流水线后,系统展示提示信息的方式。支持以下两种方式: - 页面右上角通知本次操作触发了流水线:默认选中。
- 自动弹窗展示本次操作触发的流水线详情。
|
流程配置 |
*选择扩展程序 | 要配置流程的扩展程序。可按全部、DataLeap官方和开发者自研分类展示当前支持的扩展程序,并选择一个扩展程序作为节点。 - DataLeap官方:支持人工卡点、执行发布、触发调式和选择器四个扩展程序。
- 人工卡点:简单的人工卡点功能,支持设置审核方式和审核人。
- 执行发布:主要应用于发布流水线的场景,基于流水线的编排能力,实现发布前后的处理和规范校验等。
- 触发调试:触发任务调试,成功时返回调试实例 id。
- 选择器:当满足某个执行条件时会运行对应的分支。
- 开发者自研:目前已支持 CodeCT 扩展程序。
- CodeCT:SQL 规范扫描工具,自动检测任务代码和配置中的问题,落实数据研发规范。
说明 - 流水线至少要配置一个节点。
- 鼠标悬停在节点上会显示新增、删除图标,可按需增删节点。
- 通过节点前、后、下方显示的图标⊕,可分别增加前后串行以及下方并行多个节点。
- 节点删除后,当前节点所有已配置的数据都将被清除。
- 开发者自研暂不支持自行配置,若您要开发自己的扩展程序,请提工单联系我们!
- 当前的扩展程序均来自智能市场,可单击智能市场链接跳转到相应页面查看并管理所有扩展程序。
|
扩展程序配置 | 选择扩展程序后,需配置以下信息: - 扩展程序:显示选择的扩展程序,不可编辑。
- 显示名称:扩展程序将显示的名称,默认为扩展程序名称,可按需修改。
- ID:该扩展程序的ID,自动生成,不可编辑。
- 自定义参数:扩展程序的自定义参数。各扩展程序支持的自定义参数不同,相应配置请见下面对应的说明。
- 运维配置:可配置是否允许置成功,默认为否。当选择是时,需配置可置成功的人和置成功时段。
- 可置成功的人:支持项目管理员和指定人两个选项,可多选。
- 项目管理员:本项目的所有管理员均可操作,且其中任一人置成功后即可跳过。
- 指定人:输入用户名关键词后,下拉可选,支持设置多个。
- 置成功时段:每天允许置成功的时段。
|
流程配置-扩展程序配置-人工卡点自定义参数 |
*审核方式 | 人工卡点扩展程序的审核方式,支持任一人通过和所有人通过两个选项,下拉可选。 |
*审核人 | 人工卡点扩展程序的审核人。输入用户名关键词后,下拉可选,支持设置多个。 |
描述 | 人工卡点扩展程序的描述信息,长度不超过200个字符。 |
流程配置-扩展程序配置-选择器自定义参数 |
*匹配顺序 | 选择器规则的执行顺序,支持串行匹配和并行匹配两个选项。 - 串行匹配:只运行首个满足规则的分支。
- 并行匹配:运行所有满足规则的分支。
|
*所有规则均不匹配时 | 当所有规则均不匹配时,支持选择器节点运行失败和选择器节点自动跳过两种运行方式选项。 - 选择器节点运行失败:所有规则不满足时,选择器状态置为“失败”。
- 选择器节点自动跳过:所有规则不满足时,选择器状态置为“跳过”。
|
*规则设置 | 选择器的分支规则设置情况。支持设置多个规则,可通过为选择器节点添加下游节点来增加分支规则。
分支规则包括以下两个配置项: - *执行条件:该分支规则的执行条件,由布尔表达式构成,求值结果为true/false,具体配置说明请参考选择器扩展程序说明文档。
- 执行说明:规则执行的描述信息,长度不超过50个字符。
|
流程配置-扩展程序配置-CodeCT自定义参数 |
*生效规则 | 该流水线上生效的规则。通过添加检测规则按钮,可设置多条检测规则。每条规则包含以下配置项: - *检测规则:下拉可选已创建且处于开启状态的规则。创建规则的相关说明可参见规则管理。
- *规则强度:根据实际业务场景,选择校验规则执行时的规则强度。
- 阻断:执行失败时,则扫描状态为未通过。
- 警告:执行失败时,扫描状态为已通过(规则失败)。
- 参数:检测规则使用到的参数信息,设置项包括参数名称和参数值。可按需添加多个参数。
注意 在规则管理页面设置的参数不生效,只有在流水线中配置后才会生效。规则管理页面配置的参数名可供流水线配置时参考。 - 白名单:当前设置的校验规则,对添加的白名单任务 ID 不生效。输入白名单任务 ID 后,直接回车或选中下拉列表中生成的标签,来实现添加,支持添加多个。
- 生效时间:选择开始时间和结束时间,设置规则的生效时间。
说明 - 只有在指定的时间范围内,规则校验才会生效,默认一直生效。
- 可编辑、删除已添加的规则,支持批量删除。
|
变量配置 |
参数名 | 全局变量的名称,格式为 context:params:Name,其中Name为用户手动设置的信息。
流水线提供的以下内置变量,也支持用户自定义变量。 - context:params:doradoProjectId:当前开发项目ID,默认填充,不可编辑。
- context:params:doradoProjectName:当前开发项目的名称,默认填充已设定的名称,不可编辑。
- context:params:pipelineId:流水线ID
- context:params:pipelineName:流水线名称
- context:params:executionId:流水线执行实例ID
- context:params:executionStatus:流水线执行实例运行状态
- context:params:nodeExecutionId:流水线当前执行节点实例ID
- context:params:nodeName:流水线当前执行节点名称
- context:params:nodeId:流水线当前执行节点ID
- context:params:preNodeExecutionId:流水线前序执行节点实例D
- context:params:preNodeName:流水线前序执行节点名称
- context:params:executionUrl:流水线实例执行地址
- context:params:nodeToken:流水线当前执行节点Token
- context:params:triggerUser:流水线触发人
- context:params:triggerTime:流水线触发时间
- context:params:triggerEventId:流水线触发的事件ID
- context:params:triggerOperation:流水线触发的事件操作
|
参数值 | 该参数的值,按需输入。 |
描述 | 该参数的描述信息,按需填写,例如参数 context:params:doradoProjectId 的描述信息为项目ID。 |
通知配置 |
通知状态 | 指当流水线进入何种状态时需要接收邮件通知,下拉可选以下状态,支持多选。 - 准备中
- 运行中
- 运行成功
- 警告
- 运行失败
- 手动终止
- 运行超时
- 等待中
- 手动置成功
- 跳过
|
节点流转通知 | 可选择是否开启节点流转通知,默认关闭。
如果当流水线中运行的节点发生变化时需要接收通知,可以开启此配置。 |
通知用户类型 | 接收通知的人员类型,支持流水线触发人和指定用户两个选项,可多选。 - 流水线触发人:触发流水线的人员。
- 指定用户:可输入项目人员账号关键词下拉选择,支持多选。
|
查看流水线详情
单击列表中某条信息的流水线名称,可以查看该流水线的触发记录,并执行以下操作:
- 单击某条运行记录,可查看该次触发的详情。在详情页面,单击流水线中的某个节点,可查看此节点的运行详情。
说明
对于未成功的节点,支持置成功操作;而对于等待中状态的节点,还支持通过、拒绝等操作。
- 单击某条未到终态的运行记录操作列的终止按钮,终止该流水线。
开启/关闭流水线
单击列表中某条信息操作列的开启/关闭按钮,可以关闭/开启该流水线。
编辑流水线
单击列表中某条信息操作列的编辑按钮,可以修改该流水线的信息。
4 操作结果
创建流水线后,在执行以下操作时,即可触发相应的流水线检查。
- 当任务在调试或5 提交上线时,若触发了流水线,则系统给出相应提示并可在流水线触发记录中查看流水线执行情况。
- 当开发任务选择提交并发布,或者在发布中心创建发布包时,若触发了流水线,则系统给出相应提示并可在发布包列表看到流水线执行情况。