Fix metadata not passed in provides/requires
In a dependent pipeline with a shared queue, the artifact metadata was not included in the artifact information passed to jobs for later changes. Correct that and cover metadata in all of the test cases. Change-Id: Ia92ed81ed5b8a47f5482db49cd0c3993f79c72c9
This commit is contained in:
parent
0f8f24e7df
commit
1ba690be3d
|
@ -5022,7 +5022,11 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image', 'url': 'http://example.com/image'},
|
||||
{'name': 'image',
|
||||
'url': 'http://example.com/image',
|
||||
'metadata': {
|
||||
'type': 'container_image'
|
||||
}},
|
||||
]}}
|
||||
)
|
||||
A.addApproval('Code-Review', 2)
|
||||
|
@ -5059,7 +5063,8 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image', 'url': 'http://example.com/image'},
|
||||
{'name': 'image', 'url': 'http://example.com/image',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
A.addApproval('Code-Review', 2)
|
||||
|
@ -5101,6 +5106,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'image-builder',
|
||||
'url': 'http://example.com/image',
|
||||
'name': 'image',
|
||||
'metadata': {
|
||||
'type': 'container_image',
|
||||
}
|
||||
}])
|
||||
|
||||
@simple_layout('layouts/provides-requires-unshared.yaml')
|
||||
|
@ -5111,7 +5119,8 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image', 'url': 'http://example.com/image'},
|
||||
{'name': 'image', 'url': 'http://example.com/image',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
A.addApproval('Code-Review', 2)
|
||||
|
@ -5156,14 +5165,16 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image', 'url': 'http://example.com/image'},
|
||||
{'name': 'image', 'url': 'http://example.com/image',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
self.executor_server.returnData(
|
||||
'library-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'library', 'url': 'http://example.com/library'},
|
||||
{'name': 'library', 'url': 'http://example.com/library',
|
||||
'metadata': {'type': 'library_object'}},
|
||||
]}}
|
||||
)
|
||||
self.fake_gerrit.addEvent(A.getPatchsetCreatedEvent(1))
|
||||
|
@ -5178,14 +5189,16 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', B,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image2', 'url': 'http://example.com/image2'},
|
||||
{'name': 'image2', 'url': 'http://example.com/image2',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
self.executor_server.returnData(
|
||||
'library-builder', B,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'library2', 'url': 'http://example.com/library2'},
|
||||
{'name': 'library2', 'url': 'http://example.com/library2',
|
||||
'metadata': {'type': 'library_object'}},
|
||||
]}}
|
||||
)
|
||||
self.fake_gerrit.addEvent(B.getPatchsetCreatedEvent(1))
|
||||
|
@ -5230,6 +5243,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'image-builder',
|
||||
'url': 'http://example.com/image',
|
||||
'name': 'image',
|
||||
'metadata': {
|
||||
'type': 'container_image',
|
||||
}
|
||||
}, {
|
||||
'project': 'org/project1',
|
||||
'change': '2',
|
||||
|
@ -5237,6 +5253,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'image-builder',
|
||||
'url': 'http://example.com/image2',
|
||||
'name': 'image2',
|
||||
'metadata': {
|
||||
'type': 'container_image',
|
||||
}
|
||||
}])
|
||||
library_user = self.getJobFromHistory('library-user')
|
||||
self.assertEqual(
|
||||
|
@ -5248,6 +5267,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'library-builder',
|
||||
'url': 'http://example.com/library',
|
||||
'name': 'library',
|
||||
'metadata': {
|
||||
'type': 'library_object',
|
||||
}
|
||||
}, {
|
||||
'project': 'org/project1',
|
||||
'change': '2',
|
||||
|
@ -5255,6 +5277,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'library-builder',
|
||||
'url': 'http://example.com/library2',
|
||||
'name': 'library2',
|
||||
'metadata': {
|
||||
'type': 'library_object',
|
||||
}
|
||||
}])
|
||||
|
||||
@simple_layout('layouts/provides-requires.yaml')
|
||||
|
@ -5264,14 +5289,16 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image', 'url': 'http://example.com/image'},
|
||||
{'name': 'image', 'url': 'http://example.com/image',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
self.executor_server.returnData(
|
||||
'library-builder', A,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'library', 'url': 'http://example.com/library'},
|
||||
{'name': 'library', 'url': 'http://example.com/library',
|
||||
'metadata': {'type': 'library_object'}},
|
||||
]}}
|
||||
)
|
||||
self.fake_gerrit.addEvent(A.getPatchsetCreatedEvent(1))
|
||||
|
@ -5289,14 +5316,16 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'image-builder', B,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'image2', 'url': 'http://example.com/image2'},
|
||||
{'name': 'image2', 'url': 'http://example.com/image2',
|
||||
'metadata': {'type': 'container_image'}},
|
||||
]}}
|
||||
)
|
||||
self.executor_server.returnData(
|
||||
'library-builder', B,
|
||||
{'zuul':
|
||||
{'artifacts': [
|
||||
{'name': 'library2', 'url': 'http://example.com/library2'},
|
||||
{'name': 'library2', 'url': 'http://example.com/library2',
|
||||
'metadata': {'type': 'library_object'}},
|
||||
]}}
|
||||
)
|
||||
self.fake_gerrit.addEvent(B.getPatchsetCreatedEvent(1))
|
||||
|
@ -5338,6 +5367,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'image-builder',
|
||||
'url': 'http://example.com/image',
|
||||
'name': 'image',
|
||||
'metadata': {
|
||||
'type': 'container_image',
|
||||
}
|
||||
}, {
|
||||
'project': 'org/project1',
|
||||
'change': '2',
|
||||
|
@ -5345,6 +5377,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'image-builder',
|
||||
'url': 'http://example.com/image2',
|
||||
'name': 'image2',
|
||||
'metadata': {
|
||||
'type': 'container_image',
|
||||
}
|
||||
}])
|
||||
library_user = self.getJobFromHistory('library-user')
|
||||
self.assertEqual(
|
||||
|
@ -5356,6 +5391,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'library-builder',
|
||||
'url': 'http://example.com/library',
|
||||
'name': 'library',
|
||||
'metadata': {
|
||||
'type': 'library_object',
|
||||
}
|
||||
}, {
|
||||
'project': 'org/project1',
|
||||
'change': '2',
|
||||
|
@ -5363,6 +5401,9 @@ class TestProvidesRequires(ZuulDBTestCase):
|
|||
'job': 'library-builder',
|
||||
'url': 'http://example.com/library2',
|
||||
'name': 'library2',
|
||||
'metadata': {
|
||||
'type': 'library_object',
|
||||
}
|
||||
}])
|
||||
|
||||
@simple_layout('layouts/provides-requires.yaml')
|
||||
|
|
|
@ -2327,13 +2327,11 @@ class QueueItem(object):
|
|||
artifacts = get_artifacts_from_result_data(
|
||||
build.result_data,
|
||||
logger=self.log)
|
||||
artifacts = [{'name': a['name'],
|
||||
'url': a['url'],
|
||||
'project': self.change.project.name,
|
||||
for a in artifacts:
|
||||
a.update({'project': self.change.project.name,
|
||||
'change': self.change.number,
|
||||
'patchset': self.change.patchset,
|
||||
'job': build.job.name}
|
||||
for a in artifacts]
|
||||
'job': build.job.name})
|
||||
data += artifacts
|
||||
if not self.item_ahead:
|
||||
return True
|
||||
|
|
Loading…
Reference in New Issue