This is an automated email from the ASF dual-hosted git repository.

zhongjiajie pushed a commit to branch 3.1.5-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git

commit c41154642fd34b33b3429e5e7ccb54a0f58db407
Author: Jay Chung <[email protected]>
AuthorDate: Mon Dec 19 16:06:41 2022 +0800

    [fix] Remove tenant arg in workflow definition (#13212)
    
    current tenant in workflow only work when the first time
    user do not exist, when user change the tenant in workflow
    but tenant exist, it will be ignore, so we try to remove it
    from workflow, and in #40 we try to create both user and tenant
    vis cli instead of auto create
---
 .../org/apache/dolphinscheduler/api/python/PythonGateway.java  | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/python/PythonGateway.java
 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/python/PythonGateway.java
index b858e14f8e..b03ddecf30 100644
--- 
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/python/PythonGateway.java
+++ 
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/python/PythonGateway.java
@@ -220,7 +220,6 @@ public class PythonGateway {
      * @param timeout timeout for workflow working, if running time longer 
than timeout,
      * task will mark as fail
      * @param workerGroup run task in which worker group
-     * @param tenantCode tenantCode
      * @param taskRelationJson relation json for nodes
      * @param taskDefinitionJson taskDefinitionJson
      * @param otherParamsJson otherParamsJson handle other params
@@ -236,13 +235,16 @@ public class PythonGateway {
                                        int warningGroupId,
                                        int timeout,
                                        String workerGroup,
-                                       String tenantCode,
                                        int releaseState,
                                        String taskRelationJson,
                                        String taskDefinitionJson,
                                        String otherParamsJson,
                                        String executionType) {
         User user = usersService.queryUser(userName);
+        if (user.getTenantCode() == null) {
+            throw new RuntimeException("Can not create or update workflow for 
user who not related to any tenant.");
+        }
+
         Project project = projectMapper.queryByName(projectName);
         long projectCode = project.getCode();
 
@@ -257,12 +259,12 @@ public class PythonGateway {
                     ReleaseState.OFFLINE);
             processDefinitionService.updateProcessDefinition(user, 
projectCode, name,
                     processDefinitionCode, description, globalParams,
-                    null, timeout, tenantCode, taskRelationJson, 
taskDefinitionJson, otherParamsJson,
+                    null, timeout, user.getTenantCode(), taskRelationJson, 
taskDefinitionJson, otherParamsJson,
                     executionTypeEnum);
         } else {
             Map<String, Object> result = 
processDefinitionService.createProcessDefinition(user, projectCode, name,
                     description, globalParams,
-                    null, timeout, tenantCode, taskRelationJson, 
taskDefinitionJson, otherParamsJson,
+                    null, timeout, user.getTenantCode(), taskRelationJson, 
taskDefinitionJson, otherParamsJson,
                     executionTypeEnum);
             processDefinition = (ProcessDefinition) 
result.get(Constants.DATA_LIST);
             processDefinitionCode = processDefinition.getCode();

Reply via email to