def env = [ scope_id: contextScopeId, process_instance_id: execution.getProcessInstanceId(), smardigo_management_action: smardigoManagementAction, cluster_name: cluster.name, cluster_service: cluster.service, cluster_services_str: ([cluster.service] + execution.getVariable('connect-features')).join(','), cluster_size: cluster.size, stage: cluster.stage, current_realm_name: tenant.key, current_realm_display_name: tenant.name, tenant_id: tenant.key ] if (binding.hasVariable('extraVariables')) { env << extraVariables } def ansibleCommand= 'ansible-playbook ' + smardigoManagementAction + '.yml --vault-password-file ~/vault-pass' def ansibleEnvironment= ' -e \"' env.each { key, val -> if (val instanceof List) { ansibleEnvironment+= key + '=\'' + val.join(',') + '\' ' } else { ansibleEnvironment+= key + '=\'' + val + '\' ' } } ansibleEnvironment = ansibleEnvironment.substring(0, ansibleEnvironment.length() - 1); ansibleEnvironment+= '\"' ansibleCommand += ansibleEnvironment processes.byId(contextScopeId, contextProcessId).createComment(comment + ' gestartet') processes.byId(contextScopeId, contextProcessId).createComment(ansibleCommand) ansibleCommand