master_node.mtime = None
assert master_node.name == master_name
- live_data_name = node_names[4]
- assert live_data_name != master_name
+ live_data_node = nodes[4]
+ assert live_data_node.name != master_name
fake_live_data = {
"bootid": "a2504766-498e-4b25-b21e-d23098dc3af4",
"mtotal": 4096,
"dfree": 5 * 1024 * 1024,
"dtotal": 100 * 1024 * 1024,
+ "spfree": 0,
+ "sptotal": 0,
}
assert (sorted(query._NODE_LIVE_FIELDS.keys()) ==
sorted(fake_live_data.keys()))
- live_data = dict.fromkeys(node_names, {})
- live_data[live_data_name] = \
+ live_data = dict.fromkeys([node.uuid for node in nodes], {})
+ live_data[live_data_node.uuid] = \
dict((query._NODE_LIVE_FIELDS[name][2], value)
for name, value in fake_live_data.items())
- node_to_primary = dict((name, set()) for name in node_names)
- node_to_primary[master_name].update(["inst1", "inst2"])
+ node_to_primary = dict((node.uuid, set()) for node in nodes)
+ node_to_primary[master_node.uuid].update(["inst1", "inst2"])
- node_to_secondary = dict((name, set()) for name in node_names)
- node_to_secondary[live_data_name].update(["instX", "instY", "instZ"])
+ node_to_secondary = dict((node.uuid, set()) for node in nodes)
+ node_to_secondary[live_data_node.uuid].update(["instX", "instY", "instZ"])
ng_uuid = "492b4b74-8670-478a-b98d-4c53a76238e6"
groups = {
ng_uuid: objects.NodeGroup(name="ng1", uuid=ng_uuid, ndparams={}),
}
- oob_not_powered_node = node_names[0]
- nodes[0].powered = False
- oob_support = dict((name, False) for name in node_names)
- oob_support[master_name] = True
- oob_support[oob_not_powered_node] = True
+ oob_not_powered_node = nodes[0]
+ oob_not_powered_node.powered = False
+ oob_support = dict((node.uuid, False) for node in nodes)
+ oob_support[master_node.uuid] = True
+ oob_support[oob_not_powered_node.uuid] = True
master_node.group = ng_uuid
- nqd = query.NodeQueryData(nodes, live_data, master_name,
+ nqd = query.NodeQueryData(nodes, live_data, master_node.uuid,
node_to_primary, node_to_secondary, groups,
oob_support, cluster)
result = q.Query(nqd)
row[field_index["powered"]] == (constants.RS_UNAVAIL, None)
for row, node in zip(result, nodes))
- live_data_row = result[node_to_row[live_data_name]]
+ live_data_row = result[node_to_row[live_data_node.name]]
for (field, value) in fake_live_data.items():
self.assertEqual(live_data_row[field_index[field]],
(constants.RS_NORMAL, 3))
self.assertEqual(master_row[field_index["pinst_list"]],
(constants.RS_NORMAL,
- list(node_to_primary[master_name])))
+ list(node_to_primary[master_node.uuid])))
self.assertEqual(live_data_row[field_index["sinst_list"]],
(constants.RS_NORMAL,
- utils.NiceSort(list(node_to_secondary[live_data_name]))))
+ utils.NiceSort(list(
+ node_to_secondary[live_data_node.uuid]))))
def testGetLiveNodeField(self):
nodes = [
},
})
- offline_nodes = ["nodeoff1", "nodeoff2"]
- bad_nodes = ["nodebad1", "nodebad2", "nodebad3"] + offline_nodes
- nodes = ["node%s" % i for i in range(10)] + bad_nodes
+ offline_nodes = ["nodeoff1-uuid", "nodeoff2-uuid"]
+ bad_nodes = ["nodebad1-uuid", "nodebad2-uuid", "nodebad3-uuid"] +\
+ offline_nodes
+ node_uuids = ["node%s-uuid" % i for i in range(10)] + bad_nodes
instances = [
objects.Instance(name="inst1", hvparams={}, beparams={}, nics=[],
ctime=1291244000, mtime=1291244400, serial_no=30,
admin_state=constants.ADMINST_UP, hypervisor=constants.HT_XEN_PVM,
os="linux1",
- primary_node="node1",
+ primary_node="node1-uuid",
disk_template=constants.DT_PLAIN,
disks=[],
+ disks_active=True,
osparams={}),
objects.Instance(name="inst2", hvparams={}, nics=[],
uuid="73a0f8a7-068c-4630-ada2-c3440015ab1a",
ctime=1291211000, mtime=1291211077, serial_no=1,
admin_state=constants.ADMINST_UP, hypervisor=constants.HT_XEN_HVM,
os="deb99",
- primary_node="node5",
+ primary_node="node5-uuid",
disk_template=constants.DT_DISKLESS,
disks=[],
+ disks_active=True,
beparams={
constants.BE_MAXMEM: 512,
constants.BE_MINMEM: 256,
ctime=1291011000, mtime=1291013000, serial_no=1923,
admin_state=constants.ADMINST_DOWN, hypervisor=constants.HT_KVM,
os="busybox",
- primary_node="node6",
+ primary_node="node6-uuid",
disk_template=constants.DT_DRBD8,
disks=[],
+ disks_active=False,
nics=[
objects.NIC(ip="192.0.2.99", mac=macs.pop(),
nicparams={
ctime=1291244390, mtime=1291244395, serial_no=25,
admin_state=constants.ADMINST_DOWN, hypervisor=constants.HT_XEN_PVM,
os="linux1",
- primary_node="nodeoff2",
+ primary_node="nodeoff2-uuid",
disk_template=constants.DT_DRBD8,
disks=[],
+ disks_active=True,
nics=[
objects.NIC(ip="192.0.2.1", mac=macs.pop(),
nicparams={
ctime=1231211000, mtime=1261200000, serial_no=3,
admin_state=constants.ADMINST_UP, hypervisor=constants.HT_XEN_HVM,
os="deb99",
- primary_node="nodebad2",
+ primary_node="nodebad2-uuid",
disk_template=constants.DT_DISKLESS,
disks=[],
+ disks_active=True,
beparams={
constants.BE_MAXMEM: 512,
constants.BE_MINMEM: 512,
ctime=7513, mtime=11501, serial_no=13390,
admin_state=constants.ADMINST_DOWN, hypervisor=constants.HT_XEN_HVM,
os="deb99",
- primary_node="node7",
+ primary_node="node7-uuid",
disk_template=constants.DT_DISKLESS,
disks=[],
+ disks_active=False,
beparams={
constants.BE_MAXMEM: 768,
constants.BE_MINMEM: 256,
ctime=None, mtime=None, serial_no=1947,
admin_state=constants.ADMINST_DOWN, hypervisor=constants.HT_XEN_HVM,
os="deb99",
- primary_node="node6",
+ primary_node="node6-uuid",
disk_template=constants.DT_DISKLESS,
disks=[],
+ disks_active=False,
beparams={},
osparams={}),
objects.Instance(name="inst8", hvparams={}, nics=[],
ctime=None, mtime=None, serial_no=19478,
admin_state=constants.ADMINST_OFFLINE, hypervisor=constants.HT_XEN_HVM,
os="deb99",
- primary_node="node6",
+ primary_node="node6-uuid",
disk_template=constants.DT_DISKLESS,
disks=[],
+ disks_active=False,
beparams={},
osparams={}),
]
user="root",
command=["hostname"]).ToDict()
+ nodes = dict([(uuid, objects.Node(
+ name="%s.example.com" % uuid,
+ uuid=uuid,
+ group="default-uuid"))
+ for uuid in node_uuids])
+
iqd = query.InstanceQueryData(instances, cluster, disk_usage,
offline_nodes, bad_nodes, live_data,
- wrongnode_inst, consinfo, {}, {}, {})
+ wrongnode_inst, consinfo, nodes, {}, {})
result = q.Query(iqd)
self.assertEqual(len(result), len(instances))
self.assert_(compat.all(len(row) == len(selected)
tested_status = set()
for (inst, row) in zip(instances, result):
- assert inst.primary_node in nodes
+ assert inst.primary_node in node_uuids
self.assertEqual(row[fieldidx["name"]],
(constants.RS_NORMAL, inst.name))