Merge "Fix error thrown in presence of placeholder tasks"
This commit is contained in:
commit
331bfa36df
@ -1146,7 +1146,7 @@ class Jenkins(object):
|
|||||||
raise
|
raise
|
||||||
for executor in info['executors']:
|
for executor in info['executors']:
|
||||||
executable = executor['currentExecutable']
|
executable = executor['currentExecutable']
|
||||||
if executable:
|
if executable and 'PlaceholderTask' not in executable.get('_class', ''):
|
||||||
executor_number = executor['number']
|
executor_number = executor['number']
|
||||||
build_number = executable['number']
|
build_number = executable['number']
|
||||||
url = executable['url']
|
url = executable['url']
|
||||||
|
@ -417,3 +417,40 @@ class JenkinsListRunningBuildsTest(JenkinsTestBase):
|
|||||||
builds = self.j.get_running_builds()
|
builds = self.j.get_running_builds()
|
||||||
# Should treat the slave as not running any builds
|
# Should treat the slave as not running any builds
|
||||||
self.assertEqual([], builds)
|
self.assertEqual([], builds)
|
||||||
|
|
||||||
|
@patch.object(jenkins.Jenkins, 'get_node_info')
|
||||||
|
@patch.object(jenkins.Jenkins, 'get_nodes')
|
||||||
|
def test_placeholder_task_in_queue(self, nodes_mock, node_info_mock):
|
||||||
|
nodes_to_return = [{
|
||||||
|
'name': "foo-slave", 'offline': False
|
||||||
|
}]
|
||||||
|
nodes_mock.return_value = nodes_to_return
|
||||||
|
node_info_to_return = {
|
||||||
|
"executors": [
|
||||||
|
{
|
||||||
|
"currentExecutable": None,
|
||||||
|
"currentWorkUnit": None,
|
||||||
|
"idle": True,
|
||||||
|
"likelyStuck": False,
|
||||||
|
"number": 1,
|
||||||
|
"progress": -1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'currentExecutable': {
|
||||||
|
'_class': (
|
||||||
|
'org.jenkinsci.plugins.workflow.support.steps.'
|
||||||
|
'ExecutorStepExecution$PlaceholderTask$'
|
||||||
|
'PlaceholderExecutable'
|
||||||
|
)
|
||||||
|
},
|
||||||
|
'currentWorkUnit': {},
|
||||||
|
'idle': False,
|
||||||
|
'likelyStuck': False,
|
||||||
|
'number': 1,
|
||||||
|
'progress': 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
}
|
||||||
|
node_info_mock.return_value = node_info_to_return
|
||||||
|
builds = self.j.get_running_builds()
|
||||||
|
self.assertEqual([], builds)
|
||||||
|
Loading…
Reference in New Issue
Block a user