Merge "Re-enable test_worker_update_metadata" into feature/zuulv3
This commit is contained in:
commit
ebbb6a1644
|
@ -3333,7 +3333,6 @@ class TestScheduler(ZuulTestCase):
|
|||
self.assertEqual(queue.window_floor, 1)
|
||||
self.assertEqual(C.data['status'], 'MERGED')
|
||||
|
||||
@skip("Disabled for early v3 development")
|
||||
def test_worker_update_metadata(self):
|
||||
"Test if a worker can send back metadata about itself"
|
||||
self.executor_server.hold_jobs_in_build = True
|
||||
|
@ -3343,17 +3342,17 @@ class TestScheduler(ZuulTestCase):
|
|||
self.fake_gerrit.addEvent(A.addApproval('approved', 1))
|
||||
self.waitUntilSettled()
|
||||
|
||||
self.assertEqual(len(self.executor.builds), 1)
|
||||
self.assertEqual(len(self.executor_client.builds), 1)
|
||||
|
||||
self.log.debug('Current builds:')
|
||||
self.log.debug(self.executor.builds)
|
||||
self.log.debug(self.executor_client.builds)
|
||||
|
||||
start = time.time()
|
||||
while True:
|
||||
if time.time() - start > 10:
|
||||
raise Exception("Timeout waiting for gearman server to report "
|
||||
+ "back to the client")
|
||||
build = list(self.executor.builds.values())[0]
|
||||
build = list(self.executor_client.builds.values())[0]
|
||||
if build.worker.name == "My Worker":
|
||||
break
|
||||
else:
|
||||
|
@ -3361,12 +3360,6 @@ class TestScheduler(ZuulTestCase):
|
|||
|
||||
self.log.debug(build)
|
||||
self.assertEqual("My Worker", build.worker.name)
|
||||
self.assertEqual("localhost", build.worker.hostname)
|
||||
self.assertEqual(['127.0.0.1', '192.168.1.1'], build.worker.ips)
|
||||
self.assertEqual("zuul.example.org", build.worker.fqdn)
|
||||
self.assertEqual("FakeBuilder", build.worker.program)
|
||||
self.assertEqual("v1.1", build.worker.version)
|
||||
self.assertEqual({'something': 'else'}, build.worker.extra)
|
||||
|
||||
self.executor_server.hold_jobs_in_build = False
|
||||
self.executor_server.release()
|
||||
|
@ -3563,7 +3556,7 @@ For CI problems and help debugging, contact ci@example.org"""
|
|||
self.assertEqual(False, job['retry'])
|
||||
self.assertEqual('https://server/job/project-merge/0/',
|
||||
job['url'])
|
||||
self.assertEqual(7, len(job['worker']))
|
||||
self.assertEqual(2, len(job['worker']))
|
||||
self.assertEqual(False, job['canceled'])
|
||||
self.assertEqual(True, job['voting'])
|
||||
self.assertIsNone(job['result'])
|
||||
|
|
|
@ -284,22 +284,6 @@ class Client(zuul.cmd.ZuulApp):
|
|||
'worker.hostname': {
|
||||
'title': 'Worker Hostname'
|
||||
},
|
||||
'worker.ips': {
|
||||
'title': 'Worker IPs',
|
||||
'transform': self._format_list
|
||||
},
|
||||
'worker.fqdn': {
|
||||
'title': 'Worker Domain'
|
||||
},
|
||||
'worker.program': {
|
||||
'title': 'Worker Program'
|
||||
},
|
||||
'worker.version': {
|
||||
'title': 'Worker Version'
|
||||
},
|
||||
'worker.extra': {
|
||||
'title': 'Worker Extra'
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -804,17 +804,6 @@ class AnsibleJob(object):
|
|||
'worker_name': 'My Worker',
|
||||
}
|
||||
|
||||
# TODOv3:
|
||||
# 'name': self.name,
|
||||
# 'manager': self.executor_server.hostname,
|
||||
# 'worker_name': 'My Worker',
|
||||
# 'worker_hostname': 'localhost',
|
||||
# 'worker_ips': ['127.0.0.1', '192.168.1.1'],
|
||||
# 'worker_fqdn': 'zuul.example.org',
|
||||
# 'worker_program': 'FakeBuilder',
|
||||
# 'worker_version': 'v1.1',
|
||||
# 'worker_extra': {'something': 'else'}
|
||||
|
||||
self.job.sendWorkData(json.dumps(data))
|
||||
self.job.sendWorkStatus(0, 100)
|
||||
|
||||
|
|
|
@ -1108,21 +1108,11 @@ class Worker(object):
|
|||
def __init__(self):
|
||||
self.name = "Unknown"
|
||||
self.hostname = None
|
||||
self.ips = []
|
||||
self.fqdn = None
|
||||
self.program = None
|
||||
self.version = None
|
||||
self.extra = {}
|
||||
|
||||
def updateFromData(self, data):
|
||||
"""Update worker information if contained in the WORK_DATA response."""
|
||||
self.name = data.get('worker_name', self.name)
|
||||
self.hostname = data.get('worker_hostname', self.hostname)
|
||||
self.ips = data.get('worker_ips', self.ips)
|
||||
self.fqdn = data.get('worker_fqdn', self.fqdn)
|
||||
self.program = data.get('worker_program', self.program)
|
||||
self.version = data.get('worker_version', self.version)
|
||||
self.extra = data.get('worker_extra', self.extra)
|
||||
|
||||
def __repr__(self):
|
||||
return '<Worker %s>' % self.name
|
||||
|
@ -1687,11 +1677,6 @@ class QueueItem(object):
|
|||
worker = {
|
||||
'name': build.worker.name,
|
||||
'hostname': build.worker.hostname,
|
||||
'ips': build.worker.ips,
|
||||
'fqdn': build.worker.fqdn,
|
||||
'program': build.worker.program,
|
||||
'version': build.worker.version,
|
||||
'extra': build.worker.extra
|
||||
}
|
||||
if remaining and remaining > max_remaining:
|
||||
max_remaining = remaining
|
||||
|
|
Loading…
Reference in New Issue