Test Run Summary (Jul 16 2009): KVM on Fedora release 10.90 (Rawhide) with Pegasus
by Deepti B Kalakeri
=================================================
Test Run Summary (Jul 16 2009): KVM on Fedora release 10.90 (Rawhide) with Pegasus
=================================================
Distro: Fedora release 10.90 (Rawhide)
Kernel: 2.6.29-0.38.rc1.git4.fc11.x86_64
libvirt: 0.6.5
Hypervisor: QEMU 0.10.0
CIMOM: Pegasus 2.7.2
Libvirt-cim revision: 929
Libvirt-cim changeset: 1f48bb4249af
Cimtest revision: 730
Cimtest changeset: ec760853195b
=================================================
FAIL : 6
XFAIL : 3
SKIP : 6
PASS : 146
-----------------
Total : 161
=================================================
FAIL Test Summary:
ComputerSystemIndication - 01_created_indication.py: FAIL
RASD - 07_parent_disk_pool.py: FAIL
VirtualSystemManagementService - 13_refconfig_additional_devs.py: FAIL
VirtualSystemManagementService - 15_mod_system_settings.py: FAIL
VirtualSystemMigrationService - 07_remote_offline_migration.py: FAIL
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: FAIL
=================================================
XFAIL Test Summary:
ComputerSystem - 32_start_reboot.py: XFAIL
ComputerSystem - 33_suspend_reboot.py: XFAIL
VirtualSystemManagementService - 16_removeresource.py: XFAIL
=================================================
SKIP Test Summary:
ComputerSystem - 02_nosystems.py: SKIP
LogicalDisk - 02_nodevs.py: SKIP
VSSD - 02_bootldr.py: SKIP
VirtualSystemMigrationService - 01_migratable_host.py: SKIP
VirtualSystemMigrationService - 02_host_migrate_type.py: SKIP
VirtualSystemMigrationService - 05_migratable_host_errs.py: SKIP
=================================================
Full report:
--------------------------------------------------------------------
AllocationCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
AllocationCapabilities - 02_alloccap_gi_errs.py: PASS
--------------------------------------------------------------------
ComputerSystem - 01_enum.py: PASS
--------------------------------------------------------------------
ComputerSystem - 02_nosystems.py: SKIP
ERROR - System has defined domains; unable to run
--------------------------------------------------------------------
ComputerSystem - 03_defineVS.py: PASS
--------------------------------------------------------------------
ComputerSystem - 04_defineStartVS.py: PASS
--------------------------------------------------------------------
ComputerSystem - 05_activate_defined_start.py: PASS
--------------------------------------------------------------------
ComputerSystem - 06_paused_active_suspend.py: PASS
--------------------------------------------------------------------
ComputerSystem - 22_define_suspend.py: PASS
--------------------------------------------------------------------
ComputerSystem - 23_pause_pause.py: PASS
--------------------------------------------------------------------
ComputerSystem - 27_define_pause_errs.py: PASS
--------------------------------------------------------------------
ComputerSystem - 32_start_reboot.py: XFAIL
ERROR - Got CIM error CIM_ERR_FAILED: Unable to reboot domain: this function is not supported by the hypervisor: virDomainReboot with return code 1
ERROR - Exception: Unable reboot dom 'cs_test_domain'
InvokeMethod(RequestStateChange): CIM_ERR_FAILED: Unable to reboot domain: this function is not supported by the hypervisor: virDomainReboot
Bug:<00005>
--------------------------------------------------------------------
ComputerSystem - 33_suspend_reboot.py: XFAIL
ERROR - Got CIM error CIM_ERR_NOT_SUPPORTED: State not supported with return code 7
ERROR - Exception: Unable Suspend dom 'test_domain'
InvokeMethod(RequestStateChange): CIM_ERR_NOT_SUPPORTED: State not supported
Bug:<00012>
--------------------------------------------------------------------
ComputerSystem - 35_start_reset.py: PASS
--------------------------------------------------------------------
ComputerSystem - 40_RSC_start.py: PASS
--------------------------------------------------------------------
ComputerSystem - 41_cs_to_settingdefinestate.py: PASS
--------------------------------------------------------------------
ComputerSystem - 42_cs_gi_errs.py: PASS
--------------------------------------------------------------------
ComputerSystemIndication - 01_created_indication.py: FAIL
ERROR - Waited too long for destroy indication
--------------------------------------------------------------------
ComputerSystemMigrationJobIndication - 01_csmig_ind_for_offline_mig.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 01_forward.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 02_reverse.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 03_reverse_errs.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 04_forward_errs.py: PASS
--------------------------------------------------------------------
ElementCapabilities - 01_forward.py: PASS
--------------------------------------------------------------------
ElementCapabilities - 02_reverse.py: PASS
--------------------------------------------------------------------
ElementCapabilities - 03_forward_errs.py: PASS
--------------------------------------------------------------------
ElementCapabilities - 04_reverse_errs.py: PASS
--------------------------------------------------------------------
ElementCapabilities - 05_hostsystem_cap.py: PASS
--------------------------------------------------------------------
ElementConforms - 01_forward.py: PASS
--------------------------------------------------------------------
ElementConforms - 02_reverse.py: PASS
--------------------------------------------------------------------
ElementConforms - 03_ectp_fwd_errs.py: PASS
--------------------------------------------------------------------
ElementConforms - 04_ectp_rev_errs.py: PASS
--------------------------------------------------------------------
ElementSettingData - 01_forward.py: PASS
--------------------------------------------------------------------
ElementSettingData - 03_esd_assoc_with_rasd_errs.py: PASS
--------------------------------------------------------------------
EnabledLogicalElementCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
EnabledLogicalElementCapabilities - 02_elecap_gi_errs.py: PASS
--------------------------------------------------------------------
HostSystem - 01_enum.py: PASS
--------------------------------------------------------------------
HostSystem - 02_hostsystem_to_rasd.py: PASS
--------------------------------------------------------------------
HostSystem - 03_hs_to_settdefcap.py: PASS
--------------------------------------------------------------------
HostSystem - 04_hs_to_EAPF.py: PASS
--------------------------------------------------------------------
HostSystem - 05_hs_gi_errs.py: PASS
--------------------------------------------------------------------
HostSystem - 06_hs_to_vsms.py: PASS
--------------------------------------------------------------------
HostedAccessPoint - 01_forward.py: PASS
--------------------------------------------------------------------
HostedAccessPoint - 02_reverse.py: PASS
--------------------------------------------------------------------
HostedDependency - 01_forward.py: PASS
--------------------------------------------------------------------
HostedDependency - 02_reverse.py: PASS
--------------------------------------------------------------------
HostedDependency - 03_enabledstate.py: PASS
--------------------------------------------------------------------
HostedDependency - 04_reverse_errs.py: PASS
--------------------------------------------------------------------
HostedResourcePool - 01_forward.py: PASS
--------------------------------------------------------------------
HostedResourcePool - 02_reverse.py: PASS
--------------------------------------------------------------------
HostedResourcePool - 03_forward_errs.py: PASS
--------------------------------------------------------------------
HostedResourcePool - 04_reverse_errs.py: PASS
--------------------------------------------------------------------
HostedService - 01_forward.py: PASS
--------------------------------------------------------------------
HostedService - 02_reverse.py: PASS
--------------------------------------------------------------------
HostedService - 03_forward_errs.py: PASS
--------------------------------------------------------------------
HostedService - 04_reverse_errs.py: PASS
--------------------------------------------------------------------
KVMRedirectionSAP - 01_enum_KVMredSAP.py: PASS
--------------------------------------------------------------------
LogicalDisk - 01_disk.py: PASS
--------------------------------------------------------------------
LogicalDisk - 02_nodevs.py: SKIP
ERROR - System has defined domains; unable to run
--------------------------------------------------------------------
LogicalDisk - 03_ld_gi_errs.py: PASS
--------------------------------------------------------------------
Memory - 01_memory.py: PASS
--------------------------------------------------------------------
Memory - 02_defgetmem.py: PASS
--------------------------------------------------------------------
Memory - 03_mem_gi_errs.py: PASS
--------------------------------------------------------------------
NetworkPort - 01_netport.py: PASS
--------------------------------------------------------------------
NetworkPort - 02_np_gi_errors.py: PASS
--------------------------------------------------------------------
NetworkPort - 03_user_netport.py: PASS
--------------------------------------------------------------------
Processor - 01_processor.py: PASS
--------------------------------------------------------------------
Processor - 02_definesys_get_procs.py: PASS
--------------------------------------------------------------------
Processor - 03_proc_gi_errs.py: PASS
--------------------------------------------------------------------
Profile - 01_enum.py: PASS
--------------------------------------------------------------------
Profile - 02_profile_to_elec.py: PASS
--------------------------------------------------------------------
Profile - 03_rprofile_gi_errs.py: PASS
--------------------------------------------------------------------
RASD - 01_verify_rasd_fields.py: PASS
--------------------------------------------------------------------
RASD - 02_enum.py: PASS
--------------------------------------------------------------------
RASD - 03_rasd_errs.py: PASS
--------------------------------------------------------------------
RASD - 04_disk_rasd_size.py: PASS
--------------------------------------------------------------------
RASD - 05_disk_rasd_emu_type.py: PASS
--------------------------------------------------------------------
RASD - 06_parent_net_pool.py: PASS
--------------------------------------------------------------------
RASD - 07_parent_disk_pool.py: FAIL
07_parent_disk_pool.py:47: DeprecationWarning: the sets module is deprecated
from sets import Set
ERROR - Exception details: Got 7 recs instead of 3
--------------------------------------------------------------------
RedirectionService - 01_enum_crs.py: PASS
--------------------------------------------------------------------
RedirectionService - 02_enum_crscap.py: PASS
--------------------------------------------------------------------
RedirectionService - 03_RedirectionSAP_errs.py: PASS
--------------------------------------------------------------------
ReferencedProfile - 01_verify_refprof.py: PASS
--------------------------------------------------------------------
ReferencedProfile - 02_refprofile_errs.py: PASS
--------------------------------------------------------------------
ResourceAllocationFromPool - 01_forward.py: PASS
--------------------------------------------------------------------
ResourceAllocationFromPool - 02_reverse.py: PASS
--------------------------------------------------------------------
ResourceAllocationFromPool - 03_forward_errs.py: PASS
--------------------------------------------------------------------
ResourceAllocationFromPool - 04_reverse_errs.py: PASS
--------------------------------------------------------------------
ResourceAllocationFromPool - 05_RAPF_err.py: PASS
--------------------------------------------------------------------
ResourcePool - 01_enum.py: PASS
--------------------------------------------------------------------
ResourcePool - 02_rp_gi_errors.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationCapabilities - 02_rpcc_gi_errs.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 01_enum.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 02_rcps_gi_errors.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 03_CreateResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 08_CreateDiskResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 09_DeleteDiskPool.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 02_reverse.py: PASS
--------------------------------------------------------------------
ServiceAffectsElement - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAffectsElement - 02_reverse.py: PASS
--------------------------------------------------------------------
SettingsDefine - 01_forward.py: PASS
--------------------------------------------------------------------
SettingsDefine - 02_reverse.py: PASS
--------------------------------------------------------------------
SettingsDefine - 03_sds_fwd_errs.py: PASS
--------------------------------------------------------------------
SettingsDefine - 04_sds_rev_errs.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 01_forward.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 03_forward_errs.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 04_forward_vsmsdata.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 05_reverse_vsmcap.py: PASS
--------------------------------------------------------------------
SystemDevice - 01_forward.py: PASS
--------------------------------------------------------------------
SystemDevice - 02_reverse.py: PASS
--------------------------------------------------------------------
SystemDevice - 03_fwderrs.py: PASS
--------------------------------------------------------------------
VSSD - 01_enum.py: PASS
--------------------------------------------------------------------
VSSD - 02_bootldr.py: SKIP
--------------------------------------------------------------------
VSSD - 03_vssd_gi_errs.py: PASS
--------------------------------------------------------------------
VSSD - 04_vssd_to_rasd.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementCapabilities - 02_vsmcap_gi_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 01_definesystem_name.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 02_destroysystem.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 03_definesystem_ess.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 04_definesystem_ers.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 05_destroysystem_neg.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 06_addresource.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 07_addresource_neg.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 08_modifyresource.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 09_procrasd_persist.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 10_hv_version.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 11_define_memrasdunits.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 12_referenced_config.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 13_refconfig_additional_devs.py: FAIL
ERROR - Got CIM error CIM_ERR_FAILED: ResourceSettings Error: Conflicting MAC Addresses with return code 1
ERROR - Unable define domain rstest_domain2
ERROR - Unable to define rstest_domain2
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Conflicting MAC Addresses
--------------------------------------------------------------------
VirtualSystemManagementService - 14_define_sys_disk.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 15_mod_system_settings.py: FAIL
ERROR - CIMError : (1, u'CIM_ERR_FAILED: Unable to parse embedded object')
Traceback (most recent call last):
File "./lib/XenKvmLib/const.py", line 139, in do_try
File "15_mod_system_settings.py", line 103, in main
ret = service.ModifySystemSettings(SystemSettings=vssd)
File "/data/users/deepti/F10_runs/cimtest/lib/CimTest/CimExt.py", line 32, in __call__
return self.__invoker(self.__name, args)
File "/data/users/deepti/F10_runs/cimtest/lib/CimTest/CimExt.py", line 44, in __invoke
return self.conn.InvokeMethod(method, self.inst, **params)
File "/usr/lib/python2.6/site-packages/pywbem/cim_operations.py", line 801, in InvokeMethod
result = self.methodcall(MethodName, obj, **params)
File "/usr/lib/python2.6/site-packages/pywbem/cim_operations.py", line 362, in methodcall
raise CIMError(code, tt[0][1]['DESCRIPTION'])
CIMError: (1, u'CIM_ERR_FAILED: Unable to parse embedded object')
ERROR - None
InvokeMethod(ModifySystemSettings): CIM_ERR_FAILED: Unable to parse embedded object
--------------------------------------------------------------------
VirtualSystemManagementService - 16_removeresource.py: XFAIL
ERROR - 0 RASD insts for domain/mouse:ps2
CIM_ERR_NOT_FOUND: No such instance (no device domain/mouse:ps2)
Bug:<00014>
--------------------------------------------------------------------
VirtualSystemManagementService - 17_removeresource_neg.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 18_define_sys_bridge.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 19_definenetwork_ers.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationCapabilities - 02_vsmc_gi_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationService - 01_migratable_host.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 02_host_migrate_type.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 05_migratable_host_errs.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 06_remote_live_migration.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationService - 07_remote_offline_migration.py: FAIL
ERROR - JobStatus for dom 'VM_frm_elm3a148.beaverton.ibm.com' has 'Remote already has domain `VM_frm_elm3a148.beaverton.ibm.com'' instead of 'Completed'
ERROR - Got CIM error Unauthorized with return code 0
InvokeMethod(DestroySystem): Unauthorized
--------------------------------------------------------------------
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: FAIL
ERROR - JobStatus for dom 'VM_frm_elm3a148.beaverton.ibm.com' has 'Remote already has domain `VM_frm_elm3a148.beaverton.ibm.com'' instead of 'Completed'
ERROR - Cleanup failed after 'restart' migration
ERROR - Restart migration 1
ERROR - Resume migration -1
--------------------------------------------------------------------
VirtualSystemMigrationSettingData - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationSettingData - 02_vsmsd_gi_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 01_forward.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 02_reverse.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 03_vssdc_fwd_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 04_vssdc_rev_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotService - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotService - 02_vs_sservice_gi_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotService - 03_create_snapshot.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 02_vs_sservicecap_gi_errs.py: PASS
--------------------------------------------------------------------
--
Thanks and Regards,
Deepti B. Kalakeri
IBM Linux Technology Center
deeptik(a)linux.vnet.ibm.com
15 years, 1 month
[PATCH] [TEST] Fixing rcps/07*py which fails with sfcb
by Deepti B. Kalakeri
# HG changeset patch
# User Deepti B.Kalakeri <deeptik(a)linux.vnet.ibm.com>
# Date 1247754531 25200
# Node ID 14b666e2a803048c1ce4e71b550a49c62915b3a3
# Parent ec760853195bcb5920e3822d1a8f5ba37c5b2c48
[TEST] Fixing rcps/07*py which fails with sfcb.
Tested with SLES11, with current source and sfcb.
Signed-off-by: Deepti B. Kalakeri <deeptik(a)linux.vnet.ibm.com>
diff -r ec760853195b -r 14b666e2a803 suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py
--- a/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py Wed Jul 15 14:52:43 2009 -0700
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py Thu Jul 16 07:28:51 2009 -0700
@@ -86,7 +86,7 @@
"Netmask" : "255.255.255.0",
"IPRangeStart" : "192.168.0.9",
"IPRangeEnd" : "192.168.0.15",
- "ForwardMode" : "nat"
+ "ForwardMode" : pywbem.cim_types.Uint16(1)
}
status = create_pool(options.ip, options.virt, test_pool, pool_attr)
15 years, 1 month
[PATCH] [TEST] Remove stale XenFV guest if migration fails in VSMS/02
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1247604765 25200
# Node ID a3ff36c310b2729052991032cf6c8f5cee85e838
# Parent 05d74ccb64b9ca5b313d8ccb5a89138f1dfc1aea
[TEST] Remove stale XenFV guest if migration fails in VSMS/02
Sometimes xend gets hung doing a local migration of XenFV guests. The guest
will show up in "xm list" as "migrating-guest_name". The problem with this is
that libvirt sees the guest as "guest_name", so libvirt is unable to
undefine the guest. In this case, we need to do an xm destroy to remove the
guest.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 05d74ccb64b9 -r a3ff36c310b2 suites/libvirt-cim/cimtest/VirtualSystemMigrationService/02_host_migrate_type.py
--- a/suites/libvirt-cim/cimtest/VirtualSystemMigrationService/02_host_migrate_type.py Tue Jul 14 10:15:37 2009 -0700
+++ b/suites/libvirt-cim/cimtest/VirtualSystemMigrationService/02_host_migrate_type.py Tue Jul 14 13:52:45 2009 -0700
@@ -34,6 +34,7 @@
from CimTest.Globals import logger, CIM_ERROR_ENUMERATE
from XenKvmLib.const import do_main
from CimTest.ReturnCodes import PASS, FAIL, XFAIL
+from XenKvmLib.xm_virt_util import xm_destroy
sup_types = ['Xen', 'XenFV']
@@ -182,7 +183,11 @@
if local_migrate == 0 and cxml is not None:
cxml.destroy(options.ip)
- cxml.undefine(options.ip)
+ rc = cxml.undefine(options.ip)
+ if rc == 1:
+ #Problem migrating guest locally, forcefully remove guest
+ xen_guest_name = "migrating-%s" % guest_name
+ xm_destroy(options.ip, xen_guest_name)
except Exception, details:
logger.error("Exception details: %s", details)
diff -r 05d74ccb64b9 -r a3ff36c310b2 suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py
--- a/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py Tue Jul 14 10:15:37 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py Tue Jul 14 13:52:45 2009 -0700
@@ -38,6 +38,13 @@
return out
+def xm_destroy(ip, domid):
+
+ cmd = "xm destroy %s" % domid
+
+ rc, out = utils.run_remote(ip, cmd)
+ return rc
+
def list_guests_on_bridge(ip, bridge):
"""Returns a list of domU names that have vifs in the
specified bridge.
15 years, 1 month
[PATCH] [TEST] A few more usb vs ps2 related fixes
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1247609514 25200
# Node ID ca15cd2e09bc3d6f36a17ba13ad4e1971980f633
# Parent c6049e5fdac67a46ffc0bdc3f5cf41e83f0507a7
[TEST] A few more usb vs ps2 related fixes
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r c6049e5fdac6 -r ca15cd2e09bc suites/libvirt-cim/cimtest/SystemDevice/01_forward.py
--- a/suites/libvirt-cim/cimtest/SystemDevice/01_forward.py Tue Jul 14 14:28:34 2009 -0700
+++ b/suites/libvirt-cim/cimtest/SystemDevice/01_forward.py Tue Jul 14 15:11:54 2009 -0700
@@ -105,7 +105,7 @@
if curr_cim_rev >= input_graphics_pool_rev:
input_cn = get_typed_class(virt, "PointingDevice")
graphics_cn = get_typed_class(virt, "DisplayController")
- if virt == 'XenFV':
+ if virt == 'LXC':
point_device = "%s/%s" %(test_dom, "mouse:usb")
elif virt == 'Xen':
point_device = "%s/%s" %(test_dom, "mouse:xen")
diff -r c6049e5fdac6 -r ca15cd2e09bc suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/01_forward.py
--- a/suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/01_forward.py Tue Jul 14 14:28:34 2009 -0700
+++ b/suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/01_forward.py Tue Jul 14 15:11:54 2009 -0700
@@ -86,7 +86,7 @@
rlist[3] : "%s/%s" % (test_dom, "proc")
}
- if virt == 'LXC' or virt == 'XenFV':
+ if virt == 'LXC':
input_device = "mouse:usb"
elif virt == 'Xen':
input_device = "mouse:xen"
diff -r c6049e5fdac6 -r ca15cd2e09bc suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/02_reverse.py
--- a/suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/02_reverse.py Tue Jul 14 14:28:34 2009 -0700
+++ b/suites/libvirt-cim/cimtest/VirtualSystemSettingDataComponent/02_reverse.py Tue Jul 14 15:11:54 2009 -0700
@@ -82,7 +82,7 @@
verified.
"""
status = PASS
- if virt == 'LXC' or virt == 'XenFV':
+ if virt == 'LXC':
input_device = "mouse:usb"
elif virt == 'Xen':
input_device = "mouse:xen"
15 years, 1 month
[PATCH] [TEST] Fix ESD 01: XenFV guest should use ps2 style input device
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1247606914 25200
# Node ID c6049e5fdac67a46ffc0bdc3f5cf41e83f0507a7
# Parent a3ff36c310b2729052991032cf6c8f5cee85e838
[TEST] Fix ESD 01: XenFV guest should use ps2 style input device
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r a3ff36c310b2 -r c6049e5fdac6 suites/libvirt-cim/cimtest/ElementSettingData/01_forward.py
--- a/suites/libvirt-cim/cimtest/ElementSettingData/01_forward.py Tue Jul 14 13:52:45 2009 -0700
+++ b/suites/libvirt-cim/cimtest/ElementSettingData/01_forward.py Tue Jul 14 14:28:34 2009 -0700
@@ -127,7 +127,7 @@
else:
vdisk = "hda"
- if options.virt == 'LXC' or options.virt == 'XenFV':
+ if options.virt == 'LXC':
input_device = "%s/%s" %(test_dom, "mouse:usb")
elif options.virt == 'Xen':
input_device = "%s/%s" %(test_dom, "mouse:xen")
15 years, 1 month
[PATCH] [TEST] #2 Fix RPCS 08 to work with older version of libvirt-cim
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1247591737 25200
# Node ID 05d74ccb64b9ca5b313d8ccb5a89138f1dfc1aea
# Parent ad683039dafd91ced940b28c28689bdc1e3e829c
[TEST] #2 Fix RPCS 08 to work with older version of libvirt-cim...
For versions that don't support dir, netfs pool creation, or DiskPoolRASD
templates.
Instead of checking for SKIP return value, just return status.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r ad683039dafd -r 05d74ccb64b9 suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/08_CreateDiskResourcePool.py
--- a/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/08_CreateDiskResourcePool.py Tue Jul 14 10:17:19 2009 -0700
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/08_CreateDiskResourcePool.py Tue Jul 14 10:15:37 2009 -0700
@@ -61,9 +61,11 @@
libvirt_disk_pool_support=837
libvirt_netfs_pool_support=869
-def get_pool_attr(server, pool_type, dp_types):
+def get_pool_attr(server, pool_type, dp_types, rev):
pool_attr = { "Path" : "/tmp" }
- if pool_type == dp_types['DISK_POOL_NETFS']:
+
+ if rev >= libvirt_netfs_pool_support and \
+ pool_type == dp_types['DISK_POOL_NETFS']:
status , src_mnt_dir, dir_mnt_dir = nfs_netfs_setup(server)
if status != PASS:
logger.error("Failed to get pool_attr for NETFS diskpool type")
@@ -107,7 +109,8 @@
try:
logger.info("Verifying '%s'.....", key)
test_pool = key
- status, pool_attr = get_pool_attr(server, value, dp_types)
+ status, pool_attr = get_pool_attr(server, value, dp_types,
+ curr_cim_rev)
if status != PASS:
return FAIL
@@ -144,7 +147,7 @@
logger.error("Exception details: %s", details)
if key == 'DISK_POOL_NETFS':
netfs_cleanup(server, pool_attr)
- return FAIL
+ return status
return status
15 years, 1 month
[PATCH] Check for duplicate MAC addresses
by Sharad Mishra
# HG changeset patch
# User snmishra(a)us.ibm.com
# Date 1247634781 25200
# Node ID ab9ad4cf3cb6f65ef082f4fb0fce23258e2af199
# Parent 3730865ecff94af45926b110373817e6ce38576d
Check for duplicate MAC addresses.
This patch gets all MAC addresses assigned
to the VMs on the host and verifies that the
generated or passed MAC does not conflict with
an existing MAC.
Signed-off-by: Sharad Mishra <snmishra(a)us.ibm.com>
diff -r 3730865ecff9 -r ab9ad4cf3cb6 src/Virt_VirtualSystemManagementService.c
--- a/src/Virt_VirtualSystemManagementService.c Tue Jul 07 14:13:30 2009 -0700
+++ b/src/Virt_VirtualSystemManagementService.c Tue Jul 14 22:13:01 2009 -0700
@@ -534,6 +534,69 @@
return _mac;
}
+static const char *filter_by_address(struct inst_list *src,
+ const char *address)
+{
+ int i;
+ CMPIrc ret;
+ const char *addr;
+ const char *msg = NULL;
+ CMPIInstance *inst;
+
+ for (i = 0; i < src->cur; i++) {
+ inst = src->list[i];
+ ret = cu_get_str_prop(inst, "Address", &addr);
+
+ if (ret != CMPI_RC_OK)
+ continue;
+
+ if (STREQ(addr, address)) {
+ msg = "Conflicting MAC Addresses";
+ goto out;
+ }
+ }
+out:
+ return msg;
+
+}
+
+static const char *check_duplicate_mac(CMPIInstance *inst,
+ const char *mac,
+ const char *ns)
+{
+ CMPIObjectPath *op = NULL;
+ CMPIStatus s;
+ const char *msg = NULL;
+ const char *props[] = {"Address", NULL};
+ struct inst_list in_list;
+
+ op = CMGetObjectPath(inst, &s);
+ if ((op == NULL) || (s.rc != CMPI_RC_OK)) {
+ msg = "Unable to get a reference to the guest";
+ goto out;
+ }
+
+ /* FIXME: This is a Pegasus work around. Pegsus loses the namespace
+ when an ObjectPath is pulled from an instance */
+
+ if (STREQ(NAMESPACE(op), ""))
+ CMSetNameSpace(op, ns);
+
+ inst_list_init(&in_list);
+ s = enum_rasds(_BROKER, op, NULL, CIM_RES_TYPE_NET, props, &in_list);
+ if (s.rc != CMPI_RC_OK) {
+ msg = "Failed to enumerate network instances";
+ goto out;
+ }
+
+ msg = filter_by_address(&in_list, mac);
+
+out:
+ inst_list_free(&in_list);
+ return msg;
+}
+
+
static const char *net_rasd_to_vdev(CMPIInstance *inst,
struct virt_device *dev,
const char *ns)
@@ -550,6 +613,11 @@
}
}
+ msg = check_duplicate_mac(inst, val, ns);
+ if (msg != NULL) {
+ goto out;
+ }
+
free(dev->dev.net.mac);
dev->dev.net.mac = strdup(val);
15 years, 1 month
Release of libcmpiutil 0.5
by Kaitlin Rupert
A new release of libvirt-cim is now available at:
ftp://libvirt.org/libvirt-cim/
* Features:
- Add support to parse arrays of strings
- Additional commenting
- Indication_tester.py enhancements
*ability to specify a port
*ability to specify name of indication filter
- Report disabled indications
* Bug fixes:
- Workaround for sfcb, which doesn't provide actual names of
registered classes, just provides subclass names
- Add link to libxml2
- MOF parser will ignore NULL properties
- Fix handling of invalid class in mof parser
--
Kaitlin Rupert
IBM Linux Technology Center
kaitlin(a)linux.vnet.ibm.com
15 years, 1 month
Release of libvirt-cim 0.5.6
by Kaitlin Rupert
A new release of libvirt-cim is now available at:
ftp://libvirt.org/libvirt-cim/
* Features:
- Support for specifying NIC model type for virtual NICs
- Allow user to specify UUID to use when guest is created
- Schema update from 2.16 to 2.21
- Additional storage pool support:
*fs
*netfs
*disk
*iscsi
*logical
*scsi
- Support for a list of boot devices instead of just one device
- Support for specifying the BusType of a virtual disk
- Support for generating KVM migration job indications
- Users can now specify bridge type interfaces
- Support for specifying VNC passwords
* Bug fixes:
- Allow users to specify ForwardDevice attribute for network pools
- Generate <boot> tag properly for XenFV guests
- Set the InitPath for LXC guests
- Return ResultingSnapshot parameter from CreateSnapshot()
- Expose OperationalStatus attribute of VirtualSystemManagementService
- Set the PreviousInstance of a ComputerSystemModifiedInstance
indication properly
- Verified a UUID specified is not in use by an existing guest (when
attempting to define a new guest)
- Check to see if PoolID in NetRASD has valid format
--
Kaitlin Rupert
IBM Linux Technology Center
kaitlin(a)linux.vnet.ibm.com
15 years, 1 month
[PATCH] [TEST] Fix rasd_init_list() - XenFV guests with newer vesions of libvirt
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1247531298 25200
# Node ID 5443392e87298a0d1a94eee50485e20fb815a5be
# Parent c72a55c4533250a84ae5bcd25cab08a083f2e8d5
[TEST] Fix rasd_init_list() - XenFV guests with newer vesions of libvirt...
Use ps2 input devices, not usb. Set ps2 as the default, otherwise, the guest
could end up with both ps2 and usb devices, which breaks some of the tests.
This is because the test is only expecting one input device, but libvirt adds
an additional ps2 device (in the case usb is specified).
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r c72a55c45332 -r 5443392e8729 suites/libvirt-cim/cimtest/HostSystem/02_hostsystem_to_rasd.py
--- a/suites/libvirt-cim/cimtest/HostSystem/02_hostsystem_to_rasd.py Mon Jul 13 16:12:22 2009 -0700
+++ b/suites/libvirt-cim/cimtest/HostSystem/02_hostsystem_to_rasd.py Mon Jul 13 17:28:18 2009 -0700
@@ -149,7 +149,8 @@
status, rasd_values, in_list = rasd_init_list(vsxml, virt,
test_disk, test_dom,
- test_mac, test_mem)
+ test_mac, test_mem,
+ server)
if status != PASS:
return status
diff -r c72a55c45332 -r 5443392e8729 suites/libvirt-cim/cimtest/RASD/02_enum.py
--- a/suites/libvirt-cim/cimtest/RASD/02_enum.py Mon Jul 13 16:12:22 2009 -0700
+++ b/suites/libvirt-cim/cimtest/RASD/02_enum.py Mon Jul 13 17:28:18 2009 -0700
@@ -147,7 +147,7 @@
status, rasd_values_list, in_list = rasd_init_list(vsxml, virt, test_disk,
test_dom, test_mac,
- test_mem)
+ test_mem, server)
if status != PASS:
return status
diff -r c72a55c45332 -r 5443392e8729 suites/libvirt-cim/cimtest/VSSD/04_vssd_to_rasd.py
--- a/suites/libvirt-cim/cimtest/VSSD/04_vssd_to_rasd.py Mon Jul 13 16:12:22 2009 -0700
+++ b/suites/libvirt-cim/cimtest/VSSD/04_vssd_to_rasd.py Mon Jul 13 17:28:18 2009 -0700
@@ -165,10 +165,10 @@
status = FAIL
return status, vssdc_assoc_info
-def verify_rasd_values(rasd_values_info):
+def verify_rasd_values(rasd_values_info, server):
status, rasd_values_list, in_list = rasd_init_list(vsxml, virt, test_disk,
test_dom, test_mac,
- test_mem)
+ test_mem, server)
if status != PASS:
return status
@@ -229,12 +229,12 @@
if status != PASS or len(vssd_values) == 0:
return status
- status, rasd_values = get_rasd_values_from_vssdc_assoc(vssd_values)
+ status, rasd_values = get_rasd_values_from_vssdc_assoc(vssd_values)
if status != PASS or len(rasd_values) == 0:
vsxml.undefine(server)
return status
- status = verify_rasd_values(rasd_values)
+ status = verify_rasd_values(rasd_values, server)
try:
vsxml.undefine(server)
except Exception, detail:
diff -r c72a55c45332 -r 5443392e8729 suites/libvirt-cim/lib/XenKvmLib/rasd.py
--- a/suites/libvirt-cim/lib/XenKvmLib/rasd.py Mon Jul 13 16:12:22 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/rasd.py Mon Jul 13 17:28:18 2009 -0700
@@ -47,7 +47,7 @@
dccn = 'DisplayController'
pdcn = 'PointingDevice'
-def rasd_init_list(vsxml, virt, t_disk, t_dom, t_mac, t_mem):
+def rasd_init_list(vsxml, virt, t_disk, t_dom, t_mac, t_mem, server):
"""
Creating the lists that will be used for comparisons.
"""
@@ -72,7 +72,9 @@
if virt == 'LXC':
disk_path = '/tmp/lxc_files'
- if virt == 'LXC' or virt == 'XenFV':
+ libvirt_version = virsh_version(server, virt)
+
+ if virt == 'LXC' or (virt == 'XenFV' and libvirt_version < "0.6.3"):
point_device = "%s/%s" %(t_dom, "mouse:usb")
elif virt == 'Xen':
point_device = "%s/%s" %(t_dom, "mouse:xen")
diff -r c72a55c45332 -r 5443392e8729 suites/libvirt-cim/lib/XenKvmLib/vxml.py
--- a/suites/libvirt-cim/lib/XenKvmLib/vxml.py Mon Jul 13 16:12:22 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/vxml.py Mon Jul 13 17:28:18 2009 -0700
@@ -916,7 +916,7 @@
net_name=const.default_network_name,
emu_type=None, grstype="vnc",
address="127.0.0.1", port_num='-1', keymap="en-us",
- irstype="mouse", btype="usb"):
+ irstype="mouse", btype="ps2"):
if not os.path.exists(disk_file_path):
logger.error('Error: Disk image does not exist')
sys.exit(1)
15 years, 1 month