Merge "Change node 'image' to 'label'" into feature/zuulv3

This commit is contained in:
Jenkins 2017-06-08 20:34:00 +00:00 committed by Gerrit Code Review
commit 5820e07b89
21 changed files with 50 additions and 50 deletions

View File

@ -1091,14 +1091,14 @@ class FakeBuild(object):
self.jobdir = None
self.uuid = job.unique
self.parameters = json.loads(job.arguments)
# TODOv3(jeblair): self.node is really "the image of the node
# assigned". We should rename it (self.node_image?) if we
# TODOv3(jeblair): self.node is really "the label of the node
# assigned". We should rename it (self.node_label?) if we
# keep using it like this, or we may end up exposing more of
# the complexity around multi-node jobs here
# (self.nodes[0].image?)
# (self.nodes[0].label?)
self.node = None
if len(self.parameters.get('nodes')) == 1:
self.node = self.parameters['nodes'][0]['image']
self.node = self.parameters['nodes'][0]['label']
self.unique = self.parameters['ZUUL_UUID']
self.pipeline = self.parameters['ZUUL_PIPELINE']
self.project = self.parameters['ZUUL_PROJECT']

View File

@ -71,7 +71,7 @@
name: check-vars
nodes:
- name: ubuntu-xenial
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: hello

View File

@ -16,11 +16,11 @@
name: nodeset1
nodes:
- name: controller
image: controller-image
label: controller-label
- name: compute1
image: compute-image
label: compute-label
- name: compute2
image: compute-image
label: compute-label
groups:
- name: ceph-osd
nodes:
@ -35,7 +35,7 @@
name: single-inventory
nodes:
- name: ubuntu-xenial
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: group-inventory

View File

@ -15,4 +15,4 @@
name: python27
nodes:
- name: controller
image: ubuntu-trusty
label: ubuntu-trusty

View File

@ -23,7 +23,7 @@
name: nodeset1
nodes:
- name: controller
image: controller-image
label: controller-label
- job:
name: project1-test1

View File

@ -23,7 +23,7 @@
name: nodeset1
nodes:
- name: controller
image: controller-image
label: controller-label
- job:
name: project2-test1

View File

@ -38,7 +38,7 @@
timeout: 30
nodes:
- name: controller
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: python27
@ -50,7 +50,7 @@
branches: stable/mitaka
nodes:
- name: controller
image: ubuntu-trusty
label: ubuntu-trusty
- job:
name: python35

View File

@ -49,20 +49,20 @@
attempts: 4
nodes:
- name: controller
image: image1
label: label1
- job:
name: project-test1
branches: stable
nodes:
- name: controller
image: image2
label: label2
- job:
name: project-post
nodes:
- name: static
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: project-test2

View File

@ -19,7 +19,7 @@
name: project-test1
nodes:
- name: controller
image: image1
label: label1
- project:
name: org/project

View File

@ -11,7 +11,7 @@
name: project-post
nodes:
- name: static
image: ubuntu-xenial
label: ubuntu-xenial
- project:
name: org/project

View File

@ -9,13 +9,13 @@
name: project-bitrot-stable-old
nodes:
- name: static
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: project-bitrot-stable-older
nodes:
- name: static
image: ubuntu-trusty
label: ubuntu-trusty
- project:
name: org/project

View File

@ -27,13 +27,13 @@
name: project-bitrot-stable-old
nodes:
- name: static
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: project-bitrot-stable-older
nodes:
- name: static
image: ubuntu-trusty
label: ubuntu-trusty
- project:
name: org/project

View File

@ -40,14 +40,14 @@
name: project-test1
nodes:
- name: controller
image: image1
label: label1
- job:
name: project-test1
branches: stable
nodes:
- name: controller
image: image2
label: label2
- job:
name: project-test2

View File

@ -46,14 +46,14 @@
name: project-test1
nodes:
- name: controller
image: image1
label: label1
- job:
name: project-test1
branches: stable
nodes:
- name: controller
image: image2
label: label2
- job:
name: project-test2

View File

@ -28,13 +28,13 @@
name: project-bitrot-stable-old
nodes:
- name: static
image: ubuntu-xenial
label: ubuntu-xenial
- job:
name: project-bitrot-stable-older
nodes:
- name: static
image: ubuntu-trusty
label: ubuntu-trusty
- project:
name: org/project

View File

@ -186,7 +186,7 @@ class TestJob(BaseTestCase):
'post-run': 'base-post',
'nodes': [{
'name': 'controller',
'image': 'base',
'label': 'base',
}],
})
layout.addJob(base)
@ -199,7 +199,7 @@ class TestJob(BaseTestCase):
'post-run': 'py27-post',
'nodes': [{
'name': 'controller',
'image': 'new',
'label': 'new',
}],
'timeout': 40,
})
@ -216,7 +216,7 @@ class TestJob(BaseTestCase):
'post-run': 'py27-diablo-post',
'nodes': [{
'name': 'controller',
'image': 'old',
'label': 'old',
}],
'timeout': 50,
})
@ -264,7 +264,7 @@ class TestJob(BaseTestCase):
self.assertEqual(job.timeout, 40)
nodes = job.nodeset.getNodes()
self.assertEqual(len(nodes), 1)
self.assertEqual(nodes[0].image, 'new')
self.assertEqual(nodes[0].label, 'new')
self.assertEqual([x.path for x in job.pre_run],
['playbooks/base-pre',
'playbooks/py27-pre'])
@ -292,7 +292,7 @@ class TestJob(BaseTestCase):
self.assertEqual(job.timeout, 50)
nodes = job.nodeset.getNodes()
self.assertEqual(len(nodes), 1)
self.assertEqual(nodes[0].image, 'old')
self.assertEqual(nodes[0].label, 'old')
self.assertEqual([x.path for x in job.pre_run],
['playbooks/base-pre',
'playbooks/py27-pre',

View File

@ -60,7 +60,7 @@ class TestScheduler(ZuulTestCase):
self.assertEqual(A.data['status'], 'MERGED')
self.assertEqual(A.reported, 2)
self.assertEqual(self.getJobFromHistory('project-test1').node,
'image1')
'label1')
self.assertIsNone(self.getJobFromHistory('project-test2').node)
# TODOv3(jeblair): we may want to report stats by tenant (also?).
@ -110,7 +110,7 @@ class TestScheduler(ZuulTestCase):
self.assertIn('gate', A.messages[1],
"A should transit gate")
self.assertEqual(self.getJobFromHistory('project-test1').node,
'image2')
'label2')
def test_parallel_changes(self):
"Test that changes are tested in parallel and merged in series"

View File

@ -375,9 +375,9 @@ class TestInRepoConfig(ZuulTestCase):
name: duplicate
nodes:
- name: compute
image: foo
label: foo
- name: compute
image: foo
label: foo
""")
file_dict = {'.zuul.yaml': in_repo_conf}
@ -400,7 +400,7 @@ class TestInRepoConfig(ZuulTestCase):
name: duplicate
nodes:
- name: compute
image: foo
label: foo
groups:
- name: group
nodes: compute

View File

@ -214,7 +214,7 @@ class NodeSetParser(object):
@staticmethod
def getSchema():
node = {vs.Required('name'): str,
vs.Required('image'): str,
vs.Required('label'): str,
}
group = {vs.Required('name'): str,
@ -239,7 +239,7 @@ class NodeSetParser(object):
for conf_node in as_list(conf['nodes']):
if conf_node['name'] in node_names:
raise DuplicateNodeError(conf['name'], conf_node['name'])
node = model.Node(conf_node['name'], conf_node['image'])
node = model.Node(conf_node['name'], conf_node['label'])
ns.addNode(node)
node_names.add(conf_node['name'])
for conf_group in as_list(conf.get('groups', [])):
@ -285,7 +285,7 @@ class JobParser(object):
}
node = {vs.Required('name'): str,
vs.Required('image'): str,
vs.Required('label'): str,
}
zuul_role = {vs.Required('zuul'): str,
@ -432,7 +432,7 @@ class JobParser(object):
else:
ns = model.NodeSet()
for conf_node in conf_nodes:
node = model.Node(conf_node['name'], conf_node['image'])
node = model.Node(conf_node['name'], conf_node['label'])
ns.addNode(node)
job.nodeset = ns

View File

@ -279,7 +279,7 @@ class ExecutorClient(object):
nodeset = item.current_build_set.getJobNodeSet(job.name)
nodes = []
for node in nodeset.getNodes():
nodes.append(dict(name=node.name, image=node.image,
nodes.append(dict(name=node.name, label=node.label,
az=node.az,
host_keys=node.host_keys,
provider=node.provider,

View File

@ -354,9 +354,9 @@ class Node(object):
provided by Nodepool.
"""
def __init__(self, name, image):
def __init__(self, name, label):
self.name = name
self.image = image
self.label = label
self.id = None
self.lock = None
# Attributes from Nodepool
@ -383,7 +383,7 @@ class Node(object):
self.state_time = time.time()
def __repr__(self):
return '<Node %s %s:%s>' % (self.id, self.name, self.image)
return '<Node %s %s:%s>' % (self.id, self.name, self.label)
def __ne__(self, other):
return not self.__eq__(other)
@ -392,7 +392,7 @@ class Node(object):
if not isinstance(other, Node):
return False
return (self.name == other.name and
self.image == other.image and
self.label == other.label and
self.id == other.id)
def toDict(self):
@ -471,7 +471,7 @@ class NodeSet(object):
def copy(self):
n = NodeSet(self.name)
for name, node in self.nodes.items():
n.addNode(Node(node.name, node.image))
n.addNode(Node(node.name, node.label))
for name, group in self.groups.items():
n.addGroup(Group(group.name, group.nodes[:]))
return n
@ -538,7 +538,7 @@ class NodeRequest(object):
def toDict(self):
d = {}
nodes = [n.image for n in self.nodeset.getNodes()]
nodes = [n.label for n in self.nodeset.getNodes()]
d['node_types'] = nodes
d['requestor'] = self.requestor
d['state'] = self.state