diff --git a/defaults/main.yaml b/defaults/main.yaml index 45c6c13..e026a3c 100644 --- a/defaults/main.yaml +++ b/defaults/main.yaml @@ -7,7 +7,7 @@ workflows: # - group_created # - invitation-accepted # - user-group_deleted - # - user-group-role_deleted + - user-group-role_deleted # - delete-user-account # - role_deleted # - role_created diff --git a/templates/user-group-role_created.json.j2 b/templates/user-group-role_created.json.j2 index e3850e4..3b61a6b 100644 --- a/templates/user-group-role_created.json.j2 +++ b/templates/user-group-role_created.json.j2 @@ -63,20 +63,20 @@ "name": "check_user_existance", "taskReferenceName": "check_user_existance", "inputParameters": { - "user": "${select_user.output.result[0]}" + "users": "${select_user.output.result}" }, "type": "SWITCH", "evaluatorType": "javascript", - "expression": "($.user == null ? 'true' : 'false')", + "expression": "($.users.length !== 1 ? 'true' : 'false')", "decisionCases": { - "true": [ + "true": [y { - "name" : "terminate", - "taskReferenceName" : "terminate_when_no_user", - "type" : "TERMINATE", - "inputParameters" : { - "terminationStatus" : "COMPLETED" - } + "name" : "terminate", + "taskReferenceName" : "terminate_when_no_user", + "type" : "TERMINATE", + "inputParameters" : { + "terminationStatus" : "COMPLETED" + } } ] } diff --git a/templates/user-group-role_deleted.json.j2 b/templates/user-group-role_deleted.json.j2 index d9bb963..7178059 100644 --- a/templates/user-group-role_deleted.json.j2 +++ b/templates/user-group-role_deleted.json.j2 @@ -8,13 +8,14 @@ "inputParameters" : ["role", "user", "group"], "tasks" : [ { - "name": "LAMBDA_TASK", + "name": "INLINE_TASK", "taskReferenceName": "init", - "type": "LAMBDA", + "type": "INLINE", "inputParameters": { "keycloak": "{{ keycloak }}/{{ keycloak_realm }}", "keycloak_admin" : "{{ keycloak_admin }}/{{ keycloak_realm }}", - "scriptExpression": "1" + "expression": "1", + "evaluatorType" : "javascript" } }, { @@ -48,23 +49,25 @@ } }, { - "name": "LAMBDA_TASK", + "name": "INLINE_TASK", "taskReferenceName": "select_user", "inputParameters": { "foundusers": "${lookup_user.output.body}", "username": "${workflow.input.user}", - "scriptExpression": "for(var i=0; i < $.foundusers.length;i++){if($.foundusers[i]['username'] == $.username) return Java.to([$.foundusers[i]], 'java.lang.Object[]')}" + "evaluatorType" : "javascript", + "expression": "function(){for(var i=0; i < $.foundusers.length;i++){if($.foundusers[i]['username'] == $.username) return Java.to([$.foundusers[i]], 'java.lang.Object[]')}} f()" }, - "type": "LAMBDA" + "type": "INLINE" }, { "name": "check_user_existance", "taskReferenceName": "check_user_existance", "inputParameters": { - "user": "${select_user.output.result[0]}" + "users": "${select_user.output.result}" }, "type": "DECISION", - "caseExpression": "($.user == null ? 'true' : 'false')", + "evaluatorType" : "javascript", + "expression": "($.users.length !== 1 ? 'true' : 'false')", "decisionCases": { "true": [ { @@ -106,13 +109,14 @@ } }, { - "name": "LAMBDA_TASK", + "name": "INLINE_TASK", "taskReferenceName": "select_role", - "type": "LAMBDA", + "type": "INLINE", "inputParameters": { "role": "${workflow.input.role}", "roles" : "${get_client_roles.output.body}", - "scriptExpression": "for(var i=0; i < $.roles.length;i++){if($.roles[i]['name'] == $.role) return Java.to([$.roles[i]], 'java.lang.Object[]')}" + "evaluatorType" : "javascript", + "expression": "for(var i=0; i < $.roles.length;i++){if($.roles[i]['name'] == $.role) return Java.to([$.roles[i]], 'java.lang.Object[]')}" } }, {