This is an automated email from the ASF dual-hosted git repository.
zhoujieguang pushed a change to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
from 525e441223 [Improvement-14282][Task] Add app_link on the ui of task
instance (#14283)
add e7cdc7c136 [Feature][Task Plugin] Add Dynamic task to generate dynamic
worklfows with list parameters (#14127)
No new revisions were added by this update.
Summary of changes:
docs/configs/docsdev.js | 8 +
docs/docs/en/guide/task/dynamic.md | 77 +++++
docs/docs/zh/guide/task/dynamic.md | 76 +++++
docs/img/tasks/demo/dynamic_definition.png | Bin 0 -> 27885 bytes
docs/img/tasks/demo/dynamic_running.png | Bin 0 -> 24718 bytes
docs/img/tasks/icons/dynamic.png | Bin 0 -> 10606 bytes
.../api/controller/ProcessInstanceController.java | 23 ++
...kStateCount.java => DynamicSubWorkflowDto.java} | 19 +-
.../apache/dolphinscheduler/api/enums/Status.java | 2 +
.../api/service/ProcessInstanceService.java | 4 +
.../service/impl/ProcessInstanceServiceImpl.java | 68 +++++
.../src/main/resources/task-type-config.yaml | 1 +
.../common/constants/CommandKeyConstants.java | 2 +
.../dolphinscheduler/common/enums/CommandType.java | 1 +
.../common/enums/WorkflowExecutionStatus.java | 1 +
.../utils/placeholder/BusinessTimeUtils.java | 1 +
.../{UDFUser.java => RelationSubWorkflow.java} | 29 +-
.../dolphinscheduler/dao/entity/TaskInstance.java | 5 +
...nMapper.java => RelationSubWorkflowMapper.java} | 29 +-
.../dao/repository/ProcessInstanceDao.java | 2 +
.../repository/impl/ProcessInstanceDaoImpl.java | 9 +
.../dao/mapper/RelationSubWorkflowMapper.xml | 44 +++
.../src/main/resources/sql/dolphinscheduler_h2.sql | 13 +
.../main/resources/sql/dolphinscheduler_mysql.sql | 13 +
.../resources/sql/dolphinscheduler_postgresql.sql | 13 +
.../3.2.0_schema/mysql/dolphinscheduler_ddl.sql | 24 ++
.../postgresql/dolphinscheduler_ddl.sql | 24 ++
.../master/event/TaskTimeoutStateEventHandler.java | 3 +-
.../master/runner/WorkflowExecuteRunnable.java | 24 +-
.../MasterTaskExecuteRunnableFactoryBuilder.java | 4 +-
.../dynamic/DynamicAsyncTaskExecuteFunction.java | 178 ++++++++++++
.../runner/task/dynamic/DynamicCommandUtils.java | 85 ++++++
.../runner/task/dynamic/DynamicLogicTask.java | 309 +++++++++++++++++++++
.../DynamicLogicTaskPluginFactory.java} | 36 ++-
.../master/runner/task/dynamic/DynamicOutput.java | 12 +-
.../task/subworkflow/SubWorkflowLogicTask.java | 4 +-
.../server/master/utils/TaskUtils.java | 4 +-
.../DynamicAsyncTaskExecuteFunctionTest.java | 141 ++++++++++
.../task/dynamic/DynamicCommandUtilsTest.java | 133 +++++++++
.../runner/task/dynamic/DynamicLogicTaskTest.java | 185 ++++++++++++
.../service/process/ProcessService.java | 3 +
.../service/process/ProcessServiceImpl.java | 6 +-
.../service/subworkflow/SubWorkflowService.java | 46 +++
.../subworkflow/SubWorkflowServiceImpl.java | 119 ++++++++
.../plugin/task/api/TaskConstants.java | 2 +
.../plugin/task/api/TaskPluginManager.java | 3 +
...icationInfo.java => DynamicInputParameter.java} | 11 +-
...ocessParameters.java => DynamicParameters.java} | 29 +-
.../public/images/task-icons/dynamic.png | Bin 0 -> 10606 bytes
.../public/images/task-icons/dynamic_hover.png | Bin 0 -> 11229 bytes
dolphinscheduler-ui/src/common/common.ts | 17 +-
dolphinscheduler-ui/src/common/types.ts | 1 +
dolphinscheduler-ui/src/locales/en_US/project.ts | 12 +-
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 12 +-
dolphinscheduler-ui/src/store/project/task-type.ts | 3 +
dolphinscheduler-ui/src/store/project/types.ts | 1 +
.../projects/task/components/node/detail-modal.tsx | 2 +-
.../projects/task/components/node/fields/index.ts | 1 +
.../task/components/node/fields/use-dynamic.ts | 120 ++++++++
.../projects/task/components/node/format-data.ts | 10 +-
.../projects/task/components/node/tasks/index.ts | 2 +
.../tasks/{use-sub-process.ts => use-dynamic.ts} | 19 +-
.../views/projects/task/components/node/types.ts | 4 +
.../src/views/projects/task/constants/task-type.ts | 4 +
.../workflow/components/dag/dag.module.scss | 6 +
65 files changed, 1950 insertions(+), 89 deletions(-)
create mode 100644 docs/docs/en/guide/task/dynamic.md
create mode 100644 docs/docs/zh/guide/task/dynamic.md
create mode 100644 docs/img/tasks/demo/dynamic_definition.png
create mode 100644 docs/img/tasks/demo/dynamic_running.png
create mode 100644 docs/img/tasks/icons/dynamic.png
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/{TaskStateCount.java
=> DynamicSubWorkflowDto.java} (75%)
copy
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/{UDFUser.java
=> RelationSubWorkflow.java} (78%)
copy
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/{SessionMapper.java
=> RelationSubWorkflowMapper.java} (60%)
create mode 100644
dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/RelationSubWorkflowMapper.xml
create mode 100644
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicAsyncTaskExecuteFunction.java
create mode 100644
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicCommandUtils.java
create mode 100644
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicLogicTask.java
copy
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/{subworkflow/SubWorkflowLogicTaskPluginFactory.java
=> dynamic/DynamicLogicTaskPluginFactory.java} (56%)
copy
dolphinscheduler-registry/dolphinscheduler-registry-api/src/main/java/org/apache/dolphinscheduler/registry/api/ConnectStrategyProperties.java
=>
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicOutput.java
(77%)
create mode 100644
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicAsyncTaskExecuteFunctionTest.java
create mode 100644
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicCommandUtilsTest.java
create mode 100644
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/runner/task/dynamic/DynamicLogicTaskTest.java
create mode 100644
dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/subworkflow/SubWorkflowService.java
create mode 100644
dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/subworkflow/SubWorkflowServiceImpl.java
copy
dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/model/{ApplicationInfo.java
=> DynamicInputParameter.java} (84%)
copy
dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/{SubProcessParameters.java
=> DynamicParameters.java} (65%)
create mode 100644 dolphinscheduler-ui/public/images/task-icons/dynamic.png
create mode 100644
dolphinscheduler-ui/public/images/task-icons/dynamic_hover.png
create mode 100644
dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-dynamic.ts
copy
dolphinscheduler-ui/src/views/projects/task/components/node/tasks/{use-sub-process.ts
=> use-dynamic.ts} (82%)