平台支持项目间的任务依赖,当前支持2类设置。第一类是项目组间是否支持配置任务依赖授权,这是指项目内的任务,是否允许授权给其它项目组的项目,让其它项目组的项目下的任务依赖,该配置默认为不允许,可由运维人员开启。第二类是同项目组内是否需要任务依赖全公开,这是指项目组内不同项目间任务是否可以不需要授权,就直接可以互相依赖,改配置也是默认不允许,可由运维人员开启。

配置组合1:项目组间不可依赖授权,项目组内可依赖授权

该种配置是平台默认配置,通过对任务进行依赖授权操作,可授权给项目组内的其它项目,其它被授权的项目中的任务,可以在开发模式调度设置的依赖设置中,配置上依赖授权的任务。 比如项目project1的任务flow1,依赖授权给project2,则project2下的任务flow2,在开发模式配置任务依赖时,可选择到project2的flow1,从而实现跨项目的依赖。

配置组合2:项目组间不可依赖授权,项目组内全开放

该种配置需要运维人员配置。项目组内,所有不同项目间,已创建的任务可以互相配置依赖。但是任务提交上线时,也会检测上游任务在线上模式是否已调度且节点未禁用。

离线开发任务右键,不会显示“依赖授权”。

配置组合3:项目组间可依赖授权,项目组内可依赖授权

该种配置需要运维人员配置。该种配置下,任务进行依赖授权时,可以依赖授权给全平台的项目。

配置组合4:项目组间可依赖授权,项目组内全开放

该种配置需要运维人员配置。该种配置下,项目组外的项目想要依赖当前项目的任务时,需要进行依赖授权,项目组内的项目无需进行依赖授权就可配置依赖。

注意: 依赖调度支持回收,但是需要该项目没有被依赖时才能收回。

使用介绍


本演示,针对前述的配置组合1,说明如何进行跨项目的任务依赖授权和配置依赖。

在需要配置依赖授权的项目(比如叫"mammut_one")中,离线开发的任务列表,选择某个需要配置依赖授权的任务(比如叫"xuhua_test_上游"),右键,选择依赖授权

在出现的弹框中,选择需要授权需要进行的项目(比如叫"mammut_qa")。

开启依赖授权的任务,任务名称左侧显示标记已调度|依赖授权开放

切换到被授权的项目,选择某个任务,在开发模式中进入“调度设置”。

在调度开启如果为关,则打开。在依赖设置中,点击“添加任务依赖节点”。

在添加任务依赖的弹窗中,选择进行过依赖授权的项目(“mammut_one”),并选择公开的任务(“xuhua_test_上游”),即可配置上依赖。

文件夹依赖授权&任务依赖授权

权限说明:
仅当用户有文件夹的“新建和编辑节点、运行、运行设置、结果预览、调度设置、报警设置”的权限时,才支持设置文件夹“依赖授权”;仅当用户有任务的“新建和编辑节点、运行、运行设置、结果预览、调度设置、报警设置”的权限时,才支持设置任务“依赖授权”。

核心功能说明:
文件夹依赖授权
1.文件夹给某个项目开放依赖授权后,该项目选择依赖时可以选择文件夹(含子文件夹)下的所有任务(含新增任务)。
2.文件夹回收对某个项目的依赖授权时,仅会回收当前文件夹的依赖授权,不回收文件夹下被依赖任务的依赖授权,故不影响被依赖任务的线上调度,仅当任务再次设置调度和提交上线时会检测不通过。
3.如果将任务或文件夹移动目录,从开放依赖授权的文件夹中移出,则来源于文件夹的依赖授权会被回收,不影响已配置的任务依赖,仅当任务再次设置调度和提交上线时会检测不通过。
任务依赖授权
1.任务给某个项目开放依赖授权后,该项目选择依赖时可以选择该任务。
2.任务回收对某个项目的依赖授权时,仅当该项目不存在依赖任务时方可回收依赖授权。