10:00:01 [dave@localhost _][VERBOSE] [workflow] Begin execution: node-first 10:00:01 [dave@localhost _][VERBOSE] preparing for sequential execution on 1 nodes 10:00:01 [dave@localhost _][VERBOSE] Executing command on node: EXECUTION_NODE, NodeEntryImpl{tags=[running, ec2], attributes={osFamily=unix, osArch=x86_64, description=EC2 node instance, osName=Linux, privateIpAddress=EXECUTION_NODE_IP, tags=ec2, sshport=22, nodename=EXECUTION_NODE, ssh-keypath=/var/lib/rundeck/.ssh/id_rsa, editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, hostname=EXECUTION_NODE_IP, instanceId=i-INSTANCE_ID, privateDnsName=ip-EXECUTION_NODE_IP.ec2.internal, state=running, username=rundeck}, project='null'} 10:00:01 [dave@localhost _][VERBOSE] Start EngineWorkflowExecutor 10:00:01 [dave@localhost _][VERBOSE] Building initial state and rules... 10:00:01 [dave@localhost _][VERBOSE] Update conditional state: {before.step.1=true, after.step.1=false} 10:00:01 [dave@localhost _][VERBOSE] start conditions for step [1]: [] 10:00:01 [dave@localhost _][VERBOSE] Create rule engine with rules: RuleEngine{ruleSet=[Rule: Conditions([(step.any.flowcontrol.halt == 'true')]) => DataState{state={workflow.done=true}}, Rule: Conditions([]) => DataState{state={step.1.start=true}}, Rule: Conditions([(step.any.state.failed == 'true'), (workflow.keepgoing == 'false')]) => DataState{state={workflow.done=true}}]} 10:00:01 [dave@localhost _][VERBOSE] Create workflow engine with state: StateLogger{state=DataState{state={job.url=http://RDECK_URL/project/Data/execution/follow/69848, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, job.id=a357c837-2c92-477e-94b2-1849937d335c, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-EXECUTION_NODE_IP.ec2.internal, after.step.1=false, node.ssh-keypath=/var/lib/rundeck/.ssh/id_rsa, node.hostname=EXECUTION_NODE_IP, node.os-family=unix, job.user.name=dave, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=EXECUTION_NODE_IP, node.username=rundeck, job.name=P2 (1538) appnexus reporting data validation, job.successOnEmptyNodeFilter=false, node.sshport=22, job.executionType=scheduled, job.filter=EXECUTION_NODE, node.state=running, job.wasRetry=false, job.project=Data, before.step.1=true, job.username=dave, node.os-arch=x86_64, node.instanceId=i-INSTANCE_ID, job.retryAttempt=0, job.group=Housekeeping/reporting, node.os-version=, workflow.keepgoing=false, job.execid=69848, node.name=EXECUTION_NODE, job.serverUrl=http://RDECK_URL/, job.threadcount=1}}} 10:00:01 [dave@localhost _][VERBOSE] Begin: Workflow begin 10:00:01 [dave@localhost _][VERBOSE] WillProcessStateChange: saw state changes: {workflow.state=started} 10:00:01 [dave@localhost _][VERBOSE] Update conditional state: {workflow.state=started} 10:00:01 [dave@localhost _][VERBOSE] Update conditional state: {step.1.start=true} 10:00:01 [dave@localhost _][VERBOSE] DidProcessStateChange: applied state changes and rules (changed? true): StateLogger{state=DataState{state={job.url=http://RDECK_URL/project/Data/execution/follow/69848, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, job.id=a357c837-2c92-477e-94b2-1849937d335c, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-EXECUTION_NODE_IP.ec2.internal, after.step.1=false, workflow.state=started, node.ssh-keypath=/var/lib/rundeck/.ssh/id_rsa, node.hostname=EXECUTION_NODE_IP, node.os-family=unix, job.user.name=dave, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=EXECUTION_NODE_IP, node.username=rundeck, job.name=P2 (1538) appnexus reporting data validation, job.successOnEmptyNodeFilter=false, node.sshport=22, job.executionType=scheduled, job.filter=EXECUTION_NODE, node.state=running, job.wasRetry=false, job.project=Data, before.step.1=true, step.1.start=true, job.username=dave, node.os-arch=x86_64, node.instanceId=i-INSTANCE_ID, job.retryAttempt=0, job.group=Housekeeping/reporting, node.os-version=, workflow.keepgoing=false, job.execid=69848, node.name=EXECUTION_NODE, job.serverUrl=http://RDECK_URL/, job.threadcount=1}}} 10:00:01 [dave@localhost _][VERBOSE] WillRunOperation: operation starting: Step{stepNum=1, label='null'} 10:00:01 [dave@localhost _][VERBOSE] LoopProgress: Pending(1) => run(1), skip(0), remain(0) 10:00:01 [dave@localhost 1][VERBOSE] [workflow] Begin step: 1,NodeDispatch 10:00:01 [dave@localhost 1][VERBOSE] 1: Workflow step executing: ScriptFileItem{script=[394 chars]} 10:00:01 [dave@localhost 1][VERBOSE] preparing for sequential execution on 1 nodes 10:00:01 [dave@localhost 1][VERBOSE] Executing command on node: EXECUTION_NODE, NodeEntryImpl{tags=[running, ec2], attributes={osFamily=unix, osArch=x86_64, description=EC2 node instance, osName=Linux, privateIpAddress=EXECUTION_NODE_IP, tags=ec2, sshport=22, nodename=EXECUTION_NODE, ssh-keypath=/var/lib/rundeck/.ssh/id_rsa, editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, hostname=EXECUTION_NODE_IP, instanceId=i-INSTANCE_ID, privateDnsName=ip-EXECUTION_NODE_IP.ec2.internal, state=running, username=rundeck}, project='null'} 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] [workflow] beginExecuteNodeStep(EXECUTION_NODE): NodeDispatch: ScriptFileItem{script=[394 chars]} 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Using ssh keyfile: /var/lib/rundeck/.ssh/id_rsa 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] copying file: '/var/lib/rundeck/var/tmp/dispatch2649134924498597168.tmp' to: 'EXECUTION_NODE:/tmp/62949-69848-EXECUTION_NODE-dispatch-script.tmp.sh' 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Using private key file: /var/lib/rundeck/.ssh/id_rsa 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Set timeout to 0 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Connecting to EXECUTION_NODE_IP:22 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Connecting to EXECUTION_NODE_IP port 22 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Connection established 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Remote version string: SSH-2.0-OpenSSH_6.6.1 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] Local version string: SSH-2.0-JSCH-0.1.54 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] CheckCiphers: aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc,3des-ctr,arcfour,arcfour128,arcfour256 10:00:01 [rundeck@EXECUTION_NODE 1][VERBOSE] CheckKexes: diffie-hellman-group14-sha1,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] CheckSignatures: ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_KEXINIT sent 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_KEXINIT received 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: none,zlib@openssh.com 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: none,zlib@openssh.com 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server: 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-ctr,aes192-cbc,aes256-ctr,aes256-cbc 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-ctr,aes192-cbc,aes256-ctr,aes256-cbc 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha1-96,hmac-md5-96 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha1-96,hmac-md5-96 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: none 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: none 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client: 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: server->client aes128-ctr hmac-md5 none 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] kex: client->server aes128-ctr hmac-md5 none 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_KEX_ECDH_INIT sent 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] expecting SSH_MSG_KEX_ECDH_REPLY 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] ssh_rsa_verify: signature true 10:00:03 [rundeck@EXECUTION_NODE 1][WARN] Permanently added 'EXECUTION_NODE_IP' (RSA) to the list of known hosts. 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_NEWKEYS sent 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_NEWKEYS received 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_SERVICE_REQUEST sent 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] SSH_MSG_SERVICE_ACCEPT received 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] Authentications that can continue: publickey,password,keyboard-interactive 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] Next authentication method: publickey 10:00:03 [rundeck@EXECUTION_NODE 1][VERBOSE] Authentication succeeded (publickey). 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Disconnecting from EXECUTION_NODE_IP port 22 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Caught an exception, leaving main loop due to Socket closed 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Using ssh keyfile: /var/lib/rundeck/.ssh/id_rsa 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Starting SSH Connection: rundeck@EXECUTION_NODE_IP (EXECUTION_NODE) 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Using private key file: /var/lib/rundeck/.ssh/id_rsa 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Set timeout to 0 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Connecting to EXECUTION_NODE_IP:22 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Connecting to EXECUTION_NODE_IP port 22 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Connection established 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] Disconnecting from EXECUTION_NODE_IP port 22 10:00:04 [rundeck@EXECUTION_NODE 1][ERROR] connection is closed by foreign host 10:00:04 [rundeck@EXECUTION_NODE 1][ERROR] Failed: SSHProtocolFailure: connection is closed by foreign host 10:00:04 [rundeck@EXECUTION_NODE 1][VERBOSE] [workflow] finishExecuteNodeStep(EXECUTION_NODE): NodeDispatch: SSHProtocolFailure: connection is closed by foreign host 10:00:04 [dave@localhost 1][VERBOSE] 1: Workflow step finished, result: Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ] 10:00:04 [dave@localhost 1][VERBOSE] [workflow] Finish step: 1,NodeDispatch 10:00:04 [dave@localhost _][VERBOSE] OperationSuccess: operation succeeded: StepSuccess{stepNum=1, stepResultCapture=StepResultCapture{stepResult=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ], stepSuccess=false, statusString='null', controlBehavior=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ], resultData=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)}, newState=DataState{state={step.1.result.failedNodes=EXECUTION_NODE, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true}}} 10:00:04 [dave@localhost _][VERBOSE] WillProcessStateChange: saw state changes: {step.1.result.failedNodes=EXECUTION_NODE, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true} 10:00:04 [dave@localhost _][VERBOSE] Update conditional state: {step.1.result.failedNodes=EXECUTION_NODE, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true} 10:00:04 [dave@localhost _][VERBOSE] Update conditional state: {workflow.done=true, step.1.start=true} 10:00:04 [dave@localhost _][VERBOSE] DidProcessStateChange: applied state changes and rules (changed? true): StateLogger{state=DataState{state={job.url=http://RDECK_URL/project/Data/execution/follow/69848, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, workflow.done=true, job.id=a357c837-2c92-477e-94b2-1849937d335c, step.any.state.failed=true, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-EXECUTION_NODE_IP.ec2.internal, after.step.1=true, workflow.state=started, node.ssh-keypath=/var/lib/rundeck/.ssh/id_rsa, node.hostname=EXECUTION_NODE_IP, node.os-family=unix, job.user.name=dave, step.1.result.failedNodes=EXECUTION_NODE, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=EXECUTION_NODE_IP, node.username=rundeck, job.name=P2 (1538) appnexus reporting data validation, step.1.state=failure, job.successOnEmptyNodeFilter=false, node.sshport=22, job.executionType=scheduled, job.filter=EXECUTION_NODE, step.1.completed=true, node.state=running, job.wasRetry=false, job.project=Data, before.step.1=false, step.1.start=true, job.username=dave, node.os-arch=x86_64, node.instanceId=i-INSTANCE_ID, job.retryAttempt=0, job.group=Housekeeping/reporting, node.os-version=, workflow.keepgoing=false, job.execid=69848, node.name=EXECUTION_NODE, job.serverUrl=http://RDECK_URL/, job.threadcount=1}}} 10:00:04 [dave@localhost _][VERBOSE] WorkflowEndState: Workflow end state reached. 10:00:04 [dave@localhost _][VERBOSE] WillShutdown: Workflow engine shutting down 10:00:04 [dave@localhost _][VERBOSE] Complete: Workflow complete: [Step{stepNum=1, label='null'}: StepSuccess{stepNum=1, stepResultCapture=StepResultCapture{stepResult=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ], stepSuccess=false, statusString='null', controlBehavior=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ], resultData=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)}, newState=DataState{state={step.1.result.failedNodes=EXECUTION_NODE, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true}}}] 10:00:04 [dave@localhost _][VERBOSE] [workflow] Finish execution: node-first: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, Node failures: {EXECUTION_NODE=[SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, status: failed] 10:00:04 [dave@localhost _][VERBOSE] [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, Node failures: {EXECUTION_NODE=[SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, status: failed] 10:00:04 [dave@localhost _][ERROR] Execution failed: 69848 in project Data: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [EXECUTION_NODE: SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, Node failures: {EXECUTION_NODE=[SSHProtocolFailure: connection is closed by foreign host + {dataContext=MultiDataContextImpl(map={ContextView(step:1, node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}, ContextView(node:EXECUTION_NODE)=BaseDataContext{{exec={exitCode=-1}}}}, base=null)} ]}, status: failed]