[PATCH] [TEST] Add tc to verify VSMS.RemoveResourceSettings() with correct resource

# HG changeset patch # User Guolian Yun <yunguol@cn.ibm.com> # Date 1236759196 25200 # Node ID 0e350cf7bbab15c07d948976435ff4fe1b4ab597 # Parent a78b6f23ebaa8a38fa591e420d742aa03cd9e515 [TEST] Add tc to verify VSMS.RemoveResourceSettings() with correct resource This tc verify disk and network devices now, follow up patch will verify input and graphics devices Tested for KVM/Xen/XenFV with current sources and rpm Signed-off-by: Guolian Yun<yunguol@cn.ibm.com> diff -r a78b6f23ebaa -r 0e350cf7bbab suites/libvirt-cim/cimtest/VirtualSystemManagementService/16_removeresource.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/suites/libvirt-cim/cimtest/VirtualSystemManagementService/16_removeresource.py Wed Mar 11 01:13:16 2009 -0700 @@ -0,0 +1,109 @@ +#!/usr/bin/python +# +# Copyright 2008 IBM Corp. +# +# Authors: +# Guolian Yun <yunguol@cn.ibm.com> +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +import sys +import pywbem +import random +from pywbem.cim_obj import CIMInstanceName +from XenKvmLib import vsms +from XenKvmLib import vxml +from XenKvmLib.classes import get_typed_class +from CimTest.Globals import logger +from XenKvmLib.const import do_main, get_provider_version, default_network_name +from CimTest.ReturnCodes import FAIL, PASS +from XenKvmLib.common_util import create_netpool_conf, destroy_netpool +from XenKvmLib.xm_virt_util import get_bridge_from_network_xml + +sup_types = ['Xen', 'KVM', 'XenFV'] +default_dom = 'domain' +libvirt_cim_dev_xml = 828 +ntype = 'network' +nmac = '00:11:22:33:44:55' +npool_name = default_network_name + str(random.randint(1, 100)) + +@do_main(sup_types) +def main(): + options = main.options + + if options.virt == 'KVM': + nddev = 'hdb' + else: + nddev = 'xvdb' + + cxml = vxml.get_class(options.virt)(default_dom, disk=nddev, mac=nmac) + ret = cxml.cim_define(options.ip) + if not ret: + logger.error("Failed to define the dom: %s", default_dom) + return FAIL + + drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id} + + status, net_name = create_netpool_conf(options.ip, options.virt, + use_existing=False, + net_name=npool_name) + if status != PASS: + logger.error('Unable to create network pool') + return FAIL + + dresource = CIMInstanceName(drasd, keybindings = dkeys) + nresource = CIMInstanceName(nrasd, keybindings = nkeys) + + service = vsms.get_vsms_class(options.virt)(options.ip) + try: + service.RemoveResourceSettings(ResourceSettings=[dresource, nresource]) + except Exception, details: + logger.error('Failed to remove % or %s', dresource, nresource) + logger.error(details) + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.dumpxml(options.ip) + disk = cxml.get_value_xpath('/domain/devices/disk/target/@dev[. = "%s"]' + % nddev) + if options.virt == 'KVM': + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@network[. = "%s"]' % nmac) + else: + br = get_bridge_from_network_xml(net_name, options.ip, options.virt) + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@bridge[. = "%s"]' % br) + + curr_cim_rev, changeset = get_provider_version(options.virt, options.ip) + if disk != None and net != None and curr_cim_rev >= libvirt_cim_dev_xml: + logger.error('The resource is not removerd successfully') + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return PASS + +if __name__ == "__main__": + sys.exit(main())

yunguol@cn.ibm.com wrote:
# HG changeset patch # User Guolian Yun <yunguol@cn.ibm.com> # Date 1236759196 25200 # Node ID 0e350cf7bbab15c07d948976435ff4fe1b4ab597 # Parent a78b6f23ebaa8a38fa591e420d742aa03cd9e515 [TEST] Add tc to verify VSMS.RemoveResourceSettings() with correct resource
This tc verify disk and network devices now, follow up patch will verify input and graphics devices
Tested for KVM/Xen/XenFV with current sources and rpm
Signed-off-by: Guolian Yun<yunguol@cn.ibm.com>
diff -r a78b6f23ebaa -r 0e350cf7bbab suites/libvirt-cim/cimtest/VirtualSystemManagementService/16_removeresource.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/suites/libvirt-cim/cimtest/VirtualSystemManagementService/16_removeresource.py Wed Mar 11 01:13:16 2009 -0700 @@ -0,0 +1,109 @@ +#!/usr/bin/python +# +# Copyright 2008 IBM Corp.
Change date to 2009.
+ +import sys +import pywbem
Redundant import - this can be removed.
+import random +from pywbem.cim_obj import CIMInstanceName +from XenKvmLib import vsms
Instead of importing the whole module, just import get_vsms_class().
+from XenKvmLib import vxml
Instead of importing the whole module, just import get_class().
+from XenKvmLib.classes import get_typed_class +from CimTest.Globals import logger +from XenKvmLib.const import do_main, get_provider_version, default_network_name +from CimTest.ReturnCodes import FAIL, PASS +from XenKvmLib.common_util import create_netpool_conf, destroy_netpool +from XenKvmLib.xm_virt_util import get_bridge_from_network_xml + +sup_types = ['Xen', 'KVM', 'XenFV'] +default_dom = 'domain' +libvirt_cim_dev_xml = 828
This variable is a bit oddly named. Can you use something like rem_res_err_rev? Or something that is more descriptive of the actual changeset?
+ntype = 'network' +nmac = '00:11:22:33:44:55' +npool_name = default_network_name + str(random.randint(1, 100)) + +@do_main(sup_types) +def main(): + options = main.options + + if options.virt == 'KVM': + nddev = 'hdb' + else: + nddev = 'xvdb' + + cxml = vxml.get_class(options.virt)(default_dom, disk=nddev, mac=nmac) + ret = cxml.cim_define(options.ip) + if not ret: + logger.error("Failed to define the dom: %s", default_dom) + return FAIL + + drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the proper association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and then SettingsDefineState to get the RASD instances.
+ + status, net_name = create_netpool_conf(options.ip, options.virt, + use_existing=False, + net_name=npool_name)
Why are you creating a network? The guest is created using the default network that already exists.
+ if status != PASS: + logger.error('Unable to create network pool') + return FAIL + + dresource = CIMInstanceName(drasd, keybindings = dkeys) + nresource = CIMInstanceName(nrasd, keybindings = nkeys) + + service = vsms.get_vsms_class(options.virt)(options.ip) + try: + service.RemoveResourceSettings(ResourceSettings=[dresource, nresource]) + except Exception, details: + logger.error('Failed to remove % or %s', dresource, nresource) + logger.error(details) + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.dumpxml(options.ip) + disk = cxml.get_value_xpath('/domain/devices/disk/target/@dev[. = "%s"]' + % nddev) + if options.virt == 'KVM': + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@network[. = "%s"]' % nmac) + else: + br = get_bridge_from_network_xml(net_name, options.ip, options.virt) + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@bridge[. = "%s"]' % br)
You are checking for the name of the pool you created - this isn't the same pool that was used to define the guest.
+ + curr_cim_rev, changeset = get_provider_version(options.virt, options.ip) + if disk != None and net != None and curr_cim_rev >= libvirt_cim_dev_xml:
This is actually a regression - the RemoveResources() call did work prior to changeset 779. So, you'll want to return an XFAIL if the revision is: 779 <= rev <= 828. Instead of checking disk and net in one if, break it up so that you can return an error message for each resource that fails: if disk != None: logger.error('The disk device was not removed successfully') if net != None: logger.error('The network device was not removed successfully')
+ logger.error('The resource is not removerd successfully') + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return PASS +
I would use exceptions so that you only need to call undefine() once. -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com

libvirt-cim-bounces@redhat.com wrote on 2009-03-12 06:07:19:
yunguol@cn.ibm.com wrote:
# HG changeset patch # User Guolian Yun <yunguol@cn.ibm.com> # Date 1236759196 25200 # Node ID 0e350cf7bbab15c07d948976435ff4fe1b4ab597 # Parent a78b6f23ebaa8a38fa591e420d742aa03cd9e515 [TEST] Add tc to verify VSMS.RemoveResourceSettings() with correct resource
This tc verify disk and network devices now, follow up patch will verify input and graphics devices
Tested for KVM/Xen/XenFV with current sources and rpm
Signed-off-by: Guolian Yun<yunguol@cn.ibm.com>
diff -r a78b6f23ebaa -r 0e350cf7bbab suites/libvirt- cim/cimtest/VirtualSystemManagementService/16_removeresource.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/suites/libvirt- cim/cimtest/VirtualSystemManagementService/16_removeresource.py Wed Mar 11 01:13:16 2009 -0700 @@ -0,0 +1,109 @@ +#!/usr/bin/python +# +# Copyright 2008 IBM Corp.
Change date to 2009.
+ +import sys +import pywbem
Redundant import - this can be removed.
+import random +from pywbem.cim_obj import CIMInstanceName +from XenKvmLib import vsms
Instead of importing the whole module, just import get_vsms_class().
+from XenKvmLib import vxml
Instead of importing the whole module, just import get_class().
+from XenKvmLib.classes import get_typed_class +from CimTest.Globals import logger +from XenKvmLib.const import do_main, get_provider_version, default_network_name +from CimTest.ReturnCodes import FAIL, PASS +from XenKvmLib.common_util import create_netpool_conf, destroy_netpool +from XenKvmLib.xm_virt_util import get_bridge_from_network_xml + +sup_types = ['Xen', 'KVM', 'XenFV'] +default_dom = 'domain' +libvirt_cim_dev_xml = 828
This variable is a bit oddly named. Can you use something like rem_res_err_rev? Or something that is more descriptive of the actual changeset?
+ntype = 'network' +nmac = '00:11:22:33:44:55' +npool_name = default_network_name + str(random.randint(1, 100)) + +@do_main(sup_types) +def main(): + options = main.options + + if options.virt == 'KVM': + nddev = 'hdb' + else: + nddev = 'xvdb' + + cxml = vxml.get_class(options.virt)(default_dom, disk=nddev, mac=nmac) + ret = cxml.cim_define(options.ip) + if not ret: + logger.error("Failed to define the dom: %s", default_dom) + return FAIL + + drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the proper
association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and then SettingsDefineState to get the RASD instances.
I'm working on a new patch to get the RASD instances by association. But I can't remove "KVM_InputResourceAllocationSettingData" which output the device "mouse:ps2" can not be found. Actually, I get it by SettingsDefineState. If I remove this device from the ResourceSettings, this method works for me.
+ + status, net_name = create_netpool_conf(options.ip, options.virt, + use_existing=False, + net_name=npool_name)
Why are you creating a network? The guest is created using the default network that already exists.
+ if status != PASS: + logger.error('Unable to create network pool') + return FAIL + + dresource = CIMInstanceName(drasd, keybindings = dkeys) + nresource = CIMInstanceName(nrasd, keybindings = nkeys) + + service = vsms.get_vsms_class(options.virt)(options.ip) + try: + service. RemoveResourceSettings(ResourceSettings=[dresource, nresource]) + except Exception, details: + logger.error('Failed to remove % or %s', dresource,
+ logger.error(details) + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.dumpxml(options.ip) + disk = cxml. get_value_xpath('/domain/devices/disk/target/@dev[. = "%s"]' + % nddev) + if options.virt == 'KVM': + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@network[. = "%s"]' % nmac) + else: + br = get_bridge_from_network_xml(net_name, options.ip, options.virt) + net = cxml.get_value_xpath( + '/domain/devices/interface/source/@bridge[. = "%s"]' % br)
You are checking for the name of the pool you created - this isn't the same pool that was used to define the guest.
+ + curr_cim_rev, changeset = get_provider_version(options.virt, options.ip) + if disk != None and net != None and curr_cim_rev >= libvirt_cim_dev_xml:
This is actually a regression - the RemoveResources() call did work prior to changeset 779.
So, you'll want to return an XFAIL if the revision is: 779 <= rev <=
nresource) 828.
Instead of checking disk and net in one if, break it up so that you can return an error message for each resource that fails:
if disk != None: logger.error('The disk device was not removed successfully') if net != None: logger.error('The network device was not removed successfully')
+ logger.error('The resource is not removerd successfully') + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return FAIL + + cxml.undefine(options.ip) + destroy_netpool(options.ip, options.virt, net_name) + return PASS +
I would use exceptions so that you only need to call undefine() once.
-- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim

+ drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the proper association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and then SettingsDefineState to get the RASD instances.
I'm working on a new patch to get the RASD instances by association. But I can't remove "KVM_InputResourceAllocationSettingData" which output the device "mouse:ps2" can not be found. Actually, I get it by SettingsDefineState. If I remove this device from the ResourceSettings, this method works for me.
Sorry Daisy.. I'm not sure I understand the problem you're hitting. Are you seeing an error trying to remove an input device from a guest? What error message do you see? -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com

+ drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the
libvirt-cim-bounces@redhat.com wrote on 2009-03-14 03:01:14: proper
association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and then SettingsDefineState to get the RASD instances.
I'm working on a new patch to get the RASD instances by association. But I can't remove "KVM_InputResourceAllocationSettingData" which output the device "mouse:ps2" can not be found. Actually, I get it by SettingsDefineState. If I remove this device from the ResourceSettings, this method works
for me.
Sorry Daisy.. I'm not sure I understand the problem you're hitting.
Are you seeing an error trying to remove an input device from a guest? What error message do you see?
Sorry for my confusion. I send out #2 patch. The problem is that I can not remove InputRASD. Below is the report error: VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - 'CIMInstanceName' object has no attribute 'DeviceID' No such instance (no device domain/mouse:ps2) So I Skip InputRASD together with MemRASD and ProcRASD in #2 patch.
-- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim

Guo Lian Yun wrote:
libvirt-cim-bounces@redhat.com wrote on 2009-03-14 03:01:14:
+ drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the proper association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and then SettingsDefineState to get the RASD instances.
I'm working on a new patch to get the RASD instances by association. But I can't remove "KVM_InputResourceAllocationSettingData" which output the device "mouse:ps2" can not be found. Actually, I get it by SettingsDefineState. If I remove this device from the ResourceSettings, this method works for me.
Sorry Daisy.. I'm not sure I understand the problem you're hitting.
Are you seeing an error trying to remove an input device from a guest? What error message do you see?
Sorry for my confusion. I send out #2 patch. The problem is that I can not remove InputRASD. Below is the report error:
VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - 'CIMInstanceName' object has no attribute 'DeviceID' No such instance (no device domain/mouse:ps2)
Which virtualization type are you seeing this issue on? I'm not seeing an issue with KVM. I tried running on a Xen system, and I get the following error: VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Failed to define the dom: domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML Can you paste the provider debug you're seeing?
So I Skip InputRASD together with MemRASD and ProcRASD in #2 patch.
The providers should be able to remove input devices, so you'll want to include that in the test. If you're seeing an error, it's either a test case issue or a provider issue. It's better to resolve these issues before resending an updated patch (it'll reduce the amount of churn in a given patch). Thanks! -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com

Guo Lian Yun wrote:
libvirt-cim-bounces@redhat.com wrote on 2009-03-14 03:01:14:
+ drasd = get_typed_class(options.virt, 'DiskResourceAllocationSettingData') + drasd_id = '%s/%s' % (default_dom, nddev) + dkeys = {'InstanceID' : drasd_id} + + nrasd = get_typed_class(options.virt, 'NetResourceAllocationSettingData') + nrasd_id = '%s/%s' % (default_dom, nmac) + nkeys = {'InstanceID' : nrasd_id}
Instead of hand building the instances for the resources, use the proper association calls to get the RASD instances. You know the guest, so you can use SystemDevice to get the resource instance, and
libvirt-cim-bounces@redhat.com wrote on 2009-03-17 04:46:52: then
SettingsDefineState to get the RASD instances.
I'm working on a new patch to get the RASD instances by association. But I can't remove "KVM_InputResourceAllocationSettingData" which output the device "mouse:ps2" can not be found. Actually, I get it by SettingsDefineState. If I remove this device from the ResourceSettings, this method works for me.
Sorry Daisy.. I'm not sure I understand the problem you're hitting.
Are you seeing an error trying to remove an input device from a guest? What error message do you see?
Sorry for my confusion. I send out #2 patch. The problem is that I can not remove InputRASD. Below is the report error:
VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - 'CIMInstanceName' object has no attribute 'DeviceID' No such instance (no device domain/mouse:ps2)
Which virtualization type are you seeing this issue on? I'm not seeing an issue with KVM. I tried running on a Xen system, and I get the following error:
VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Failed to define the dom: domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML
Can you paste the provider debug you're seeing?
I hit the error for most of tc for VSMS. May I look into it tomorrow? I have to attend a couple of meeting this afternoon =) Testing Xen hypervisor -------------------------------------------------------------------- VirtualSystemManagementService - 01_definesystem_name.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Unable to define test_domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML -------------------------------------------------------------------- VirtualSystemManagementService - 02_destroysystem.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Failed to define the dom: test_domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML
So I Skip InputRASD together with MemRASD and ProcRASD in #2 patch.
The providers should be able to remove input devices, so you'll want to include that in the test.
If you're seeing an error, it's either a test case issue or a provider issue. It's better to resolve these issues before resending an updated patch (it'll reduce the amount of churn in a given patch).
Thanks!
-- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim

Which virtualization type are you seeing this issue on? I'm not seeing an issue with KVM. I tried running on a Xen system, and I get the following error:
VirtualSystemManagementService - 16_removeresource.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Failed to define the dom: domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML
Can you paste the provider debug you're seeing?
I hit the error for most of tc for VSMS. May I look into it tomorrow? I have to attend a couple of meeting this afternoon =)
Testing Xen hypervisor -------------------------------------------------------------------- VirtualSystemManagementService - 01_definesystem_name.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Unable to define test_domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML -------------------------------------------------------------------- VirtualSystemManagementService - 02_destroysystem.py: FAIL ERROR - Got CIM error CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML with return code 1 ERROR - Failed to define the dom: test_domain InvokeMethod(DefineSystem): CIM_ERR_FAILED: Failed to define domain: invalid argument in virDomainDefineXML
Hmm.. that libvirt error indicates the guest is being specified with an option that isn't valid. If you can track down what part of the guest XML it doesn't like, that would be great. Thanks! -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com
participants (3)
-
Guo Lian Yun
-
Kaitlin Rupert
-
yunguol@cn.ibm.com