Hi Russ,
I made an example based on 3 nodes, this is the job definition:
- defaultTab: nodes
description: ''
executionEnabled: true
id: 0fcfca07-02f6-4583-a3eb-0002276bdf2d
loglevel: INFO
name: HelloWorld
nodeFilterEditable: false
nodefilters:
dispatch:
excludePrecedence: true
keepgoing: true
rankOrder: ascending
successOnEmptyNodeFilter: false
threadcount: '3'
filter: node.*
nodesSelectedByDefault: true
plugins:
ExecutionLifecycle: null
scheduleEnabled: true
sequence:
commands:
- exec: sleep 5; echo "one"
- exec: sleep 5; echo "two"
- exec: sleep 5; echo "three"
- exec: sleep 5; echo "four"
keepgoing: false
strategy: node-first
uuid: 0fcfca07-02f6-4583-a3eb-0002276bdf2d
Basically setting the Thread Count with the number of nodes and set “Continue running on any remaining nodes before failing the step.” in “If a node fails” (both on the Nodes job tab).
Check the result (in the example fails in the first step but the node can fail on any step and the result is the same).
Hope it helps!