This is an automated email from the ASF dual-hosted git repository.
zihaoxiang pushed a change to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
from 0862515eee [Fix-17579][Workflow] Fix view variable error after setting
startup parameters for workflow instance (#17583)
add 63f8aac5ba [DSIP-90][Task] Add a gRPC task plugin (#17402)
No new revisions were added by this update.
Summary of changes:
.github/workflows/api-test.yml | 2 +
config/plugins_config | 1 +
docs/docs/en/guide/task/grpc.md | 56 ++++
docs/docs/zh/guide/task/grpc.md | 56 ++++
docs/img/tasks/demo/grpc_task01.png | Bin 0 -> 428057 bytes
docs/img/tasks/demo/grpc_task02.png | Bin 0 -> 328495 bytes
docs/img/tasks/icons/grpc.png | Bin 0 -> 13322 bytes
.../GrpcTaskAPITest.java} | 61 +++-
.../resources/docker/task-grpc/docker-compose.yaml | 35 ++-
.../task-grpc/grpcFailedWorkflow.json | 96 +++++++
.../task-grpc/grpcSuccessWorkflow.json | 96 +++++++
.../src/main/resources/task-type-config.yaml | 1 +
dolphinscheduler-bom/pom.xml | 97 ++++++-
dolphinscheduler-dist/release-docs/NOTICE | 11 +
.../LICENSE-protobufjs} | 21 +-
.../dolphinscheduler-task-all/pom.xml | 6 +
.../dolphinscheduler-task-grpc/pom.xml | 293 +++++++++++++++++++
.../plugin/task/grpc/GrpcCheckCondition.java} | 15 +-
.../plugin/task/grpc/GrpcCredentialType.java | 7 +-
.../plugin/task/grpc/GrpcParameters.java} | 46 +--
.../plugin/task/grpc/GrpcTask.java | 157 ++++++++++
.../plugin/task/grpc/GrpcTaskChannel.java} | 9 +-
.../plugin/task/grpc/GrpcTaskChannelFactory.java} | 8 +-
.../plugin/task/grpc/GrpcTaskException.java} | 16 +-
.../task/grpc/protobufjs/GrpcConstants.java} | 9 +-
.../task/grpc/protobufjs/GrpcDynamicService.java | 190 +++++++++++++
.../task/grpc/protobufjs/GrpcParserException.java | 14 +-
.../grpc/protobufjs/JSONDescriptorHelper.java} | 23 +-
.../task/grpc/protobufjs/JSONDescriptorParser.java | 92 ++++++
.../plugin/task/grpc/protobufjs/mapping/Enum.java | 11 +-
.../plugin/task/grpc/protobufjs/mapping/Field.java | 20 +-
.../task/grpc/protobufjs/mapping/MapField.java | 9 +-
.../task/grpc/protobufjs/mapping/Method.java | 15 +-
.../task/grpc/protobufjs/mapping/Namespace.java} | 16 +-
.../plugin/task/grpc/protobufjs/mapping/OneOf.java | 13 +-
.../grpc/protobufjs/mapping/ReflectionObject.java | 18 +-
.../plugin/task/grpc/protobufjs/mapping/Root.java | 12 +-
.../task/grpc/protobufjs/mapping/Service.java | 11 +-
.../plugin/task/grpc/protobufjs/mapping/Type.java | 9 +-
.../task/grpc/protobufjs/types/EnumType.java | 42 +++
.../task/grpc/protobufjs/types/FieldType.java | 116 ++++++++
.../task/grpc/protobufjs/types/MapFieldType.java | 67 +++++
.../task/grpc/protobufjs/types/MethodType.java | 28 +-
.../task/grpc/protobufjs/types/OneofType.java | 28 +-
.../task/grpc/protobufjs/types/ServiceType.java | 42 +++
.../task/grpc/protobufjs/types/TypeType.java | 127 +++++++++
.../plugin/task/grpc/GrpcParametersTest.java | 109 +++++++
.../plugin/task/grpc/GrpcParserTest.java | 315 +++++++++++++++++++++
.../plugin/task/grpc/GrpcTaskTest.java | 226 +++++++++++++++
.../src/test/proto/parserTester.proto | 98 +++++++
.../src/test/proto/taskTester.proto | 20 +-
.../src/test/resources/parserTester.json | 244 ++++++++++++++++
.../src/test/resources/taskTester.json | 61 ++++
dolphinscheduler-task-plugin/pom.xml | 1 +
dolphinscheduler-ui/package.json | 1 +
dolphinscheduler-ui/pnpm-lock.yaml | 91 +++++-
.../public/images/task-icons/grpc.png | Bin 0 -> 13322 bytes
.../public/images/task-icons/grpc_hover.png | Bin 0 -> 10337 bytes
dolphinscheduler-ui/src/locales/en_US/project.ts | 23 ++
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 20 ++
dolphinscheduler-ui/src/store/project/task-type.ts | 3 +
dolphinscheduler-ui/src/store/project/types.ts | 1 +
.../projects/task/components/node/fields/index.ts | 1 +
.../task/components/node/fields/use-grpc.ts | 196 +++++++++++++
.../projects/task/components/node/format-data.ts | 16 ++
.../projects/task/components/node/tasks/index.ts | 2 +
.../node/tasks/{use-http.ts => use-grpc.ts} | 15 +-
.../views/projects/task/components/node/types.ts | 7 +
.../src/views/projects/task/constants/task-type.ts | 5 +
.../workflow/components/dag/dag.module.scss | 6 +
70 files changed, 3241 insertions(+), 222 deletions(-)
create mode 100644 docs/docs/en/guide/task/grpc.md
create mode 100644 docs/docs/zh/guide/task/grpc.md
create mode 100644 docs/img/tasks/demo/grpc_task01.png
create mode 100644 docs/img/tasks/demo/grpc_task02.png
create mode 100644 docs/img/tasks/icons/grpc.png
copy
dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/java/org/apache/dolphinscheduler/api/test/cases/{ExecutorAPITest.java
=> tasks/GrpcTaskAPITest.java} (65%)
copy .github/workflows/schema-check/mysql/docker-compose-base.yaml =>
dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/task-grpc/docker-compose.yaml
(61%)
create mode 100644
dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/task-grpc/grpcFailedWorkflow.json
create mode 100644
dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/workflow-json/task-grpc/grpcSuccessWorkflow.json
copy dolphinscheduler-dist/release-docs/licenses/{LICENSE-leveldbjni-all.txt
=> ui-licenses/LICENSE-protobufjs} (60%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/pom.xml
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/enums/DependResult.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcCheckCondition.java}
(77%)
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/executor/workflow/IExecutorDelegate.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcCredentialType.java
(85%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-http/src/main/java/org/apache/dolphinscheduler/plugin/task/http/HttpParameters.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcParameters.java}
(51%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcTask.java
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-http/src/main/java/org/apache/dolphinscheduler/plugin/task/http/HttpTaskChannel.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcTaskChannel.java}
(86%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-http/src/main/java/org/apache/dolphinscheduler/plugin/task/http/HttpTaskChannelFactory.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcTaskChannelFactory.java}
(86%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/TaskException.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcTaskException.java}
(72%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-http/src/main/java/org/apache/dolphinscheduler/plugin/task/http/HttpConstants.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/GrpcConstants.java}
(80%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/GrpcDynamicService.java
copy
dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/java/org/apache/dolphinscheduler/e2e/models/tenant/DefaultTenant.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/GrpcParserException.java
(74%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-dvc/src/main/java/org/apache/dolphinscheduler/plugin/task/dvc/DvcTaskChannel.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/JSONDescriptorHelper.java}
(58%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/JSONDescriptorParser.java
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/ProductInfoDto.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Enum.java
(82%)
copy
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/model/ITaskInstanceContext.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Field.java
(67%)
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/ProductInfoDto.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/MapField.java
(85%)
copy
dolphinscheduler-alert/dolphinscheduler-alert-plugins/dolphinscheduler-alert-webexteams/src/main/java/org/apache/dolphinscheduler/plugin/alert/webexteams/WebexMessage.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Method.java
(74%)
copy
dolphinscheduler-task-plugin/{dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/resource/AbstractResourceParameters.java
=>
dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Namespace.java}
(70%)
copy
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/OkHttpRequestHeaders.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/OneOf.java
(75%)
copy
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/model/ITaskInstanceContext.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/ReflectionObject.java
(65%)
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/ProductInfoDto.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Root.java
(77%)
copy
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/dto/ProductInfoDto.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Service.java
(82%)
copy
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/OkHttpRequestHeaders.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/mapping/Type.java
(80%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/EnumType.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/FieldType.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/MapFieldType.java
copy
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/AlertPluginInstanceType.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/MethodType.java
(58%)
copy
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TaskDefinitionLogDao.java
=>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/OneofType.java
(56%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/ServiceType.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/main/java/org/apache/dolphinscheduler/plugin/task/grpc/protobufjs/types/TypeType.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcParametersTest.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcParserTest.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/java/org/apache/dolphinscheduler/plugin/task/grpc/GrpcTaskTest.java
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/proto/parserTester.proto
copy dolphinscheduler-ui/src/utils/trim.ts =>
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/proto/taskTester.proto
(65%)
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/resources/parserTester.json
create mode 100644
dolphinscheduler-task-plugin/dolphinscheduler-task-grpc/src/test/resources/taskTester.json
create mode 100644 dolphinscheduler-ui/public/images/task-icons/grpc.png
create mode 100644 dolphinscheduler-ui/public/images/task-icons/grpc_hover.png
create mode 100644
dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-grpc.ts
copy
dolphinscheduler-ui/src/views/projects/task/components/node/tasks/{use-http.ts
=> use-grpc.ts} (89%)