> diff -r bbd83da2f0f6 -r 31fca7629bd7
> suites/libvirt-cim/lib/XenKvmLib/vsms.py
> --- a/suites/libvirt-cim/lib/XenKvmLib/vsms.py Wed Oct 08 18:18:48
> 2008 -0700
> +++ b/suites/libvirt-cim/lib/XenKvmLib/vsms.py Wed Oct 15 19:13:10
> 2008 -0700
> @@ -108,7 +108,6 @@
> self.Kernel = const.Xen_kernel_path
> self.Ramdisk = const.Xen_init_path
> -
> class Xen_VirtualSystemSettingData(CIM_VirtualSystemSettingData):
> pass
>
> @@ -118,9 +117,10 @@
> class LXC_VirtualSystemSettingData(CIM_VirtualSystemSettingData):
> pass
>
> -@eval_cls('VirtualSystemSettingData')
> -def get_vssd_class(virt):
> - pass
> +def get_vssd_mof(virt, dom_name):
> + vssd_cn = eval(get_typed_class(virt, "VirtualSystemSettingData"))
> + vssd = vssd_cn(dom_name, virt)
>
I did not get the difference between vssd_cn and vssd assignments, both
of them evaluate to classobj XenKvmLib.vsms.Xen_VirtualSystemSettingData.
> + return vssd.mof()
>
If you print vssd_cn, you'll get:
XenKvmLib.vsms.KVM_VirtualSystemSettingData
If you print vssd, you'll get mof syntax.
================================
To see why this change is needed, you can apply the following patch.
Run it once with:
return vssd
#return vssd.mof()
Then run it again with
#return vssd
return vssd.mof()
In the first case, the VSSD object is:
<XenKvmLib.vsms.KVM_VirtualSystemSettingData instance at 0x217a320>
In the second, it's a properly formatted MOF, which is what the CIMOM is
expecting.
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1224271624 25200
# Node ID 93edf76620526b54e527de006ad3c2d587c725a3
# Parent 16ed883b2d333bfe73059c319b011e5fe6153ae8
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 16ed883b2d33 -r 93edf7662052 lib/CimTest/CimExt.py
--- a/lib/CimTest/CimExt.py Wed Oct 15 19:13:10 2008 -0700
+++ b/lib/CimTest/CimExt.py Fri Oct 17 12:27:04 2008 -0700
@@ -29,6 +29,8 @@
return _Method(self.__invoker, "%s.%s" % (self.__name, name))
def __call__(self, **args):
+ print "\n"
+ print args
return self.__invoker(self.__name, args)
diff -r 16ed883b2d33 -r 93edf7662052
suites/libvirt-cim/cimtest/VirtualSystemManagementService/14_define_sys_disk.py
---
a/suites/libvirt-cim/cimtest/VirtualSystemManagementService/14_define_sys_disk.py
Wed Oct 15 19:13:10 2008 -0700
+++
b/suites/libvirt-cim/cimtest/VirtualSystemManagementService/14_define_sys_disk.py
Fri Oct 17 12:27:04 2008 -0700
@@ -92,6 +92,7 @@
destroy_and_undefine_domain(test_dom, options.ip, options.virt)
+ return FAIL
return status
if __name__ == "__main__":
diff -r 16ed883b2d33 -r 93edf7662052
suites/libvirt-cim/lib/XenKvmLib/vsms.py
--- a/suites/libvirt-cim/lib/XenKvmLib/vsms.py Wed Oct 15 19:13:10 2008
-0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/vsms.py Fri Oct 17 12:27:04 2008
-0700
@@ -119,8 +119,14 @@
def get_vssd_mof(virt, dom_name):
vssd_cn = eval(get_typed_class(virt, "VirtualSystemSettingData"))
+ print vssd_cn
+ print "\n"
vssd = vssd_cn(dom_name, virt)
- return vssd.mof()
+ print vssd
+ print "\n"
+ print vssd.mof()
+ return vssd
+ #return vssd.mof()
# classes to define RASD parameters
class CIM_DiskResourceAllocationSettingData(CIMClassMOF):
--
Kaitlin Rupert
IBM Linux Technology Center
kaitlin(a)linux.vnet.ibm.com