-
Notifications
You must be signed in to change notification settings - Fork 60
Description
Whenever using the node label paramter plugin to parameterize a Pipeline job it tries to allocate a flyweight executor on the node given as parameter.
However the Pipeline script itselt seems to be still executed on the master.
But it still has some influence on the Pipeline execution as - depending on the node selected - sometimes our implicitly loaded global shared Pipeline library cannot be cloned.
Please check following simple script. Put the node offline before running - you'll see that the Pipeline is waiting for that node. However if you just block the selected node by running some other job it'll still execute. And - anyway - the job should not be blocked until it finally reaches the node block which actually uses that node.
properties([
parameters([
[$class: 'NodeParameterDefinition',
allowedSlaves: [],
defaultSlaves: [],
description: '',
name: 'foo',
nodeEligibility: [$class: 'AllNodeEligibility'],
triggerIfResult: 'multiSelectionDisallowed'
]
])
])
Originally reported by
macdrega, imported from: node and label parameters try to allocate flyweight executor when used in Pipeline jobs
- status: Open
- priority: Major
- component(s): nodelabelparameter-plugin
- resolution: Unresolved
- votes: 0
- watchers: 2
- imported: 20251210-235911
Raw content of original issue
Whenever using the node label paramter plugin to parameterize a Pipeline job it tries to allocate a flyweight executor on the node given as parameter.
However the Pipeline script itselt seems to be still executed on the master.
But it still has some influence on the Pipeline execution as - depending on the node selected - sometimes our implicitly loaded global shared Pipeline library cannot be cloned.
Please check following simple script. Put the node offline before running - you'll see that the Pipeline is waiting for that node. However if you just block the selected node by running some other job it'll still execute. And - anyway - the job should not be blocked until it finally reaches the node block which actually uses that node.
properties([ parameters([ [$class: 'NodeParameterDefinition', allowedSlaves: [], defaultSlaves: [], description: '', name: 'foo', nodeEligibility: [$class: 'AllNodeEligibility'], triggerIfResult: 'multiSelectionDisallowed' ] ]) ])
- environment:
node label parameter plugin v1.7.2