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!