Merge "Adding instance metadata into cluster data model"
This commit is contained in:
@@ -235,7 +235,8 @@ class ModelBuilder(object):
|
|||||||
"disk": flavor.disk,
|
"disk": flavor.disk,
|
||||||
"disk_capacity": flavor.disk,
|
"disk_capacity": flavor.disk,
|
||||||
"vcpus": flavor.vcpus,
|
"vcpus": flavor.vcpus,
|
||||||
"state": getattr(instance, "OS-EXT-STS:vm_state")}
|
"state": getattr(instance, "OS-EXT-STS:vm_state"),
|
||||||
|
"metadata": instance.metadata}
|
||||||
|
|
||||||
# node_attributes = dict()
|
# node_attributes = dict()
|
||||||
# node_attributes["layer"] = "virtual"
|
# node_attributes["layer"] = "virtual"
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ class Instance(compute_resource.ComputeResource):
|
|||||||
"disk": wfields.IntegerField(),
|
"disk": wfields.IntegerField(),
|
||||||
"disk_capacity": wfields.NonNegativeIntegerField(),
|
"disk_capacity": wfields.NonNegativeIntegerField(),
|
||||||
"vcpus": wfields.NonNegativeIntegerField(),
|
"vcpus": wfields.NonNegativeIntegerField(),
|
||||||
|
"metadata": wfields.DictField(),
|
||||||
}
|
}
|
||||||
|
|
||||||
def accept(self, visitor):
|
def accept(self, visitor):
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ class NovaNotification(base.NotificationEndpoint):
|
|||||||
memory_mb = instance_flavor_data['memory_mb']
|
memory_mb = instance_flavor_data['memory_mb']
|
||||||
num_cores = instance_flavor_data['vcpus']
|
num_cores = instance_flavor_data['vcpus']
|
||||||
disk_gb = instance_flavor_data['root_gb']
|
disk_gb = instance_flavor_data['root_gb']
|
||||||
|
instance_metadata = data['nova_object.data']['metadata']
|
||||||
|
|
||||||
instance.update({
|
instance.update({
|
||||||
'state': instance_data['state'],
|
'state': instance_data['state'],
|
||||||
@@ -75,6 +76,7 @@ class NovaNotification(base.NotificationEndpoint):
|
|||||||
'vcpus': num_cores,
|
'vcpus': num_cores,
|
||||||
'disk': disk_gb,
|
'disk': disk_gb,
|
||||||
'disk_capacity': disk_gb,
|
'disk_capacity': disk_gb,
|
||||||
|
'metadata': instance_metadata,
|
||||||
})
|
})
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -90,6 +92,7 @@ class NovaNotification(base.NotificationEndpoint):
|
|||||||
memory_mb = data['memory_mb']
|
memory_mb = data['memory_mb']
|
||||||
num_cores = data['vcpus']
|
num_cores = data['vcpus']
|
||||||
disk_gb = data['root_gb']
|
disk_gb = data['root_gb']
|
||||||
|
instance_metadata = data['metadata']
|
||||||
|
|
||||||
instance.update({
|
instance.update({
|
||||||
'state': data['state'],
|
'state': data['state'],
|
||||||
@@ -99,6 +102,7 @@ class NovaNotification(base.NotificationEndpoint):
|
|||||||
'vcpus': num_cores,
|
'vcpus': num_cores,
|
||||||
'disk': disk_gb,
|
'disk': disk_gb,
|
||||||
'disk_capacity': disk_gb,
|
'disk_capacity': disk_gb,
|
||||||
|
'metadata': instance_metadata,
|
||||||
})
|
})
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ class TestNovaClusterDataModelCollector(base.TestCase):
|
|||||||
id='ef500f7e-dac8-470f-960c-169486fce71b',
|
id='ef500f7e-dac8-470f-960c-169486fce71b',
|
||||||
human_id='fake_instance',
|
human_id='fake_instance',
|
||||||
flavor={'ram': 333, 'disk': 222, 'vcpus': 4, 'id': 1},
|
flavor={'ram': 333, 'disk': 222, 'vcpus': 4, 'id': 1},
|
||||||
|
metadata={'hi': 'hello'},
|
||||||
)
|
)
|
||||||
setattr(fake_instance, 'OS-EXT-STS:vm_state', 'VM_STATE')
|
setattr(fake_instance, 'OS-EXT-STS:vm_state', 'VM_STATE')
|
||||||
m_nova_helper.get_compute_node_list.return_value = [fake_compute_node]
|
m_nova_helper.get_compute_node_list.return_value = [fake_compute_node]
|
||||||
|
|||||||
Reference in New Issue
Block a user