Don't store system_metadata in xenstore

Fixes bug 1029774

system_metadata should not be exposed to users.

This reverts part of commit 82afe7ad5 / ChangeID I88a59f1b783

Change-Id: Id454dbcbafef861db3f88620a56d8dd2ccd30e1d
This commit is contained in:
Chris Behrens
2012-07-27 06:20:16 +00:00
parent 0626def72e
commit 1ca9d3c9df
3 changed files with 2 additions and 46 deletions

View File

@@ -1483,7 +1483,6 @@ def _build_instance_get(context, session=None):
options(joinedload_all('security_groups.rules')).\
options(joinedload('info_cache')).\
options(joinedload('metadata')).\
options(joinedload('system_metadata')).\
options(joinedload('instance_type'))

View File

@@ -2252,6 +2252,8 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
self.key = key
self.value = value
# Add some system_metadata to ensure it doesn't get added
# to xenstore
instance = dict(metadata=[FakeMetaItem("a", 1),
FakeMetaItem("b", 2),
FakeMetaItem("c", 3)],
@@ -2265,9 +2267,6 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {},
})
@@ -2279,17 +2278,11 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
}
@@ -2301,18 +2294,12 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/user-metadata/d': '4',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/user-metadata/d': '4',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
})
@@ -2323,17 +2310,11 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
}
@@ -2344,17 +2325,11 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '4',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '4',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
})
@@ -2365,17 +2340,11 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/b': '2',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
}
@@ -2385,15 +2354,9 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'persist': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
'ephem': {
'vm-data/user-metadata/a': '1',
'vm-data/user-metadata/c': '3',
'vm-data/system-metadata/sys_a': '1',
'vm-data/system-metadata/sys_b': '2',
'vm-data/system-metadata/sys_c': '3',
},
})

View File

@@ -22,9 +22,7 @@ Management class for VM-related functions (spawn, reboot, etc).
import cPickle as pickle
import functools
import itertools
import os
import time
import uuid
from eventlet import greenthread
import netaddr
@@ -46,7 +44,6 @@ from nova import utils
from nova.virt import driver
from nova.virt.xenapi import agent
from nova.virt.xenapi import firewall
from nova.virt.xenapi import network_utils
from nova.virt.xenapi import vm_utils
from nova.virt.xenapi import volume_utils
@@ -856,9 +853,6 @@ class VMOps(object):
# Store user metadata
store_meta('vm-data/user-metadata', instance['metadata'])
# Store system metadata
store_meta('vm-data/system-metadata', instance['system_metadata'])
def change_instance_metadata(self, instance, diff):
"""Apply changes to instance metadata to xenstore."""
vm_ref = self._get_vm_opaque_ref(instance)