[PATCH 0 of 3] Add support for SCSI (host bus adapter) type pools
by Kaitlin Rupert
This set of changes is for scsi pools that are based on a host bus adapter. These types of sotrage include FiberChannel attached storage devices, as well as
SANs. There's two different ways to define these pools:
FiberChannel connected devices:
<pool type="scsi">
<name>hba0</name>
<source>
<adapter name="host4"/>
</source>
<target>
<path>/dev/disk/by-id</path>
</target>
</pool>
SAN devices:
<pool type="scsi">
<name>npiv</name>
<source>
<adapter name="host6" wwpn="0000111122223333" wwnn="4444555566667777"/>
</source>
<target>
<path>/dev/disk/by-id</path>
</target>
</pool>
15 years, 5 months
[PATCH] (#3) Add check to ensure PoolID specified in NetRASD has valid format
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1246064238 25200
# Node ID dd7ce21f085b956aa412af6f0665ab7e4eacfe07
# Parent 2f7ac06918f55d89f099447972b48d06b0140669
(#3) Add check to ensure PoolID specified in NetRASD has valid format
Updated from 2 t 3:
-Rebase patch based on current sources
Updates from 1 to 2:
-Add a proper subject and commit log to patch
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 2f7ac06918f5 -r dd7ce21f085b src/Virt_VirtualSystemManagementService.c
--- a/src/Virt_VirtualSystemManagementService.c Wed Jun 24 10:27:16 2009 -0700
+++ b/src/Virt_VirtualSystemManagementService.c Fri Jun 26 17:57:18 2009 -0700
@@ -539,6 +539,7 @@
{
const char *val = NULL;
const char *msg = NULL;
+ char *network = NULL;
if (cu_get_str_prop(inst, "Address", &val) != CMPI_RC_OK) {
val = _net_rand_mac();
@@ -577,7 +578,14 @@
return "No NetworkPool specified no default available";
free(dev->dev.net.source);
- dev->dev.net.source = name_from_pool_id(val);
+ network = name_from_pool_id(val);
+ if (network == NULL) {
+ msg = "PoolID specified is not formatted properly";
+ goto out;
+ }
+
+ dev->dev.net.source = strdup(network);
+
} else
return "Invalid Network Type specified";
free(dev->dev.net.model);
@@ -587,6 +595,7 @@
else
dev->dev.net.model = strdup(val);
out:
+ free(network);
return msg;
}
15 years, 5 months
[PATCH] Verify specified UUID is not in use by existing guest
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1245863542 25200
# Node ID 7417f62e29eb8b37acb66e616e49f51901f610c6
# Parent 76be9533b5bab87a55c14ab68640c82cfd400b7b
Verify specified UUID is not in use by existing guest
Before generating the XML needed to define a guest, make sure a guest with
the same UUID is not already defined.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 76be9533b5ba -r 7417f62e29eb src/Virt_VirtualSystemManagementService.c
--- a/src/Virt_VirtualSystemManagementService.c Wed Jun 24 09:06:46 2009 -0700
+++ b/src/Virt_VirtualSystemManagementService.c Wed Jun 24 10:12:22 2009 -0700
@@ -1243,6 +1243,8 @@
CMPIInstance *inst = NULL;
char *xml = NULL;
const char *msg = NULL;
+ virConnectPtr conn = NULL;
+ virDomainPtr dom = NULL;
struct domain *domain = NULL;
@@ -1268,6 +1270,26 @@
goto out;
}
+ if (domain->uuid != NULL) {
+ conn = connect_by_classname(_BROKER, CLASSNAME(ref), NULL);
+ if (conn == NULL) {
+ cu_statusf(_BROKER, s,
+ CMPI_RC_ERR_FAILED,
+ "Error connecting to libvirt");
+ goto out;
+ }
+
+ dom = virDomainLookupByUUIDString(conn, domain->uuid);
+ if (dom != NULL) {
+ cu_statusf(_BROKER, s,
+ CMPI_RC_ERR_FAILED,
+ "Guest '%s' is already defined with UUID %s",
+ virDomainGetName(dom),
+ domain->uuid);
+ goto out;
+ }
+ }
+
msg = classify_resources(resources, NAMESPACE(ref), domain);
if (msg != NULL) {
CU_DEBUG("Failed to classify resources: %s", msg);
@@ -1295,6 +1317,8 @@
out:
cleanup_dominfo(&domain);
free(xml);
+ virDomainFree(dom);
+ virConnectClose(conn);
return inst;
}
15 years, 5 months
Test Run Summary (Jun 30 2009): KVM on Fedora release 11.90 (Rawhide) with sfcb
by Kaitlin Rupert
=================================================
Test Run Summary (Jun 30 2009): KVM on Fedora release 11.90 (Rawhide) with sfcb
=================================================
Distro: Fedora release 11.90 (Rawhide)
Kernel: 2.6.27.15-170.2.24.fc10.x86_64
libvirt: 0.6.4
Hypervisor: QEMU 0.9.1
CIMOM: sfcb sfcbd 1.3.4preview
Libvirt-cim revision: 914
Libvirt-cim changeset: 2f0fb9e5d523
Cimtest revision: 709
Cimtest changeset: 479f287a17fd
=================================================
FAIL : 8
XFAIL : 3
SKIP : 7
PASS : 140
-----------------
Total : 158
=================================================
FAIL Test Summary:
ComputerSystemIndication - 01_created_indication.py: FAIL
HostSystem - 03_hs_to_settdefcap.py: FAIL
NetworkPort - 03_user_netport.py: FAIL
RASD - 07_parent_disk_pool.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefineCapabilities - 01_forward.py: FAIL
VirtualSystemManagementService - 15_mod_system_settings.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:
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
VirtualSystemMigrationService - 06_remote_live_migration.py: SKIP
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
VirtualSystemMigrationService - 08_remote_restart_resume_migration.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: PASS
--------------------------------------------------------------------
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 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): 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 State not supported with return code 7
ERROR - Exception: Unable Suspend dom 'test_domain'
InvokeMethod(RequestStateChange): 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 - Exception : Request Failed: 200
Traceback (most recent call last):
File "./lib/XenKvmLib/const.py", line 139, in do_try
File "01_created_indication.py", line 146, in main
sub_list, ind_names, dict = sub_ind(ip, virt)
File "01_created_indication.py", line 60, in sub_ind
sub.subscribe(dict['default_url'], dict['default_auth'])
File "/data/users/kaitlin/sandbox/cimtest/suites/libvirt-cim/lib/XenKvmLib/indication_tester.py", line 345, in subscribe
"CreateInstance", auth_hdr)
File "/data/users/kaitlin/sandbox/cimtest/suites/libvirt-cim/lib/XenKvmLib/indication_tester.py", line 330, in __do_cimpost
(resp.status, resp.reason))
Exception: Request Failed: 200
ERROR - None
--------------------------------------------------------------------
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: FAIL
ERROR - KVM_SettingsDefineCapabilities returned 16 RASD objects instead of 8 for NetworkPool/cimtest-networkpool
Class not found
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
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: FAIL
ERROR - Got CIM error ResourceSettings Error: Invalid Network Type specified with return code 1
ERROR - Unable to define domain test_domain
InvokeMethod(DefineSystem): ResourceSettings Error: Invalid Network Type specified
--------------------------------------------------------------------
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
ERROR - Exception details: Got 6 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: FAIL
ERROR - Exception in create_pool()
ERROR - Exception details: (1, u'Pool with that name already exists')
ERROR - Error in networkpool creation
InvokeMethod(CreateChildResourcePool): Pool with that name already exists
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Exception in create_pool()
ERROR - Exception details: (1, u'*** Provider Virt_ResourcePoolConfigurationService(16729) exiting due to a SIGSEGV signal ')
ERROR - Error in networkpool creation
InvokeMethod(CreateChildResourcePool): *** Provider Virt_ResourcePoolConfigurationService(16729) exiting due to a SIGSEGV signal
--------------------------------------------------------------------
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: FAIL
ERROR - KVM_SettingsDefineCapabilities returned 16 ResourcePool objects instead of 8
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 14_define_sys_disk.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 15_mod_system_settings.py: FAIL
ERROR - CIMError : (1, u'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/kaitlin/sandbox/cimtest/lib/CimTest/CimExt.py", line 32, in __call__
return self.__invoker(self.__name, args)
File "/data/users/kaitlin/sandbox/cimtest/lib/CimTest/CimExt.py", line 44, in __invoke
return self.conn.InvokeMethod(method, self.inst, **params)
File "/usr/lib/python2.5/site-packages/pywbem/cim_operations.py", line 801, in InvokeMethod
result = self.methodcall(MethodName, obj, **params)
File "/usr/lib/python2.5/site-packages/pywbem/cim_operations.py", line 362, in methodcall
raise CIMError(code, tt[0][1]['DESCRIPTION'])
CIMError: (1, u'Unable to parse embedded object')
ERROR - None
InvokeMethod(ModifySystemSettings): Unable to parse embedded object
--------------------------------------------------------------------
VirtualSystemManagementService - 16_removeresource.py: XFAIL
ERROR - 0 RASD insts for domain/mouse:ps2
No such instance (no device domain/mouse:ps2)
Bug:<00014>
--------------------------------------------------------------------
VirtualSystemManagementService - 17_removeresource_neg.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: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: SKIP
--------------------------------------------------------------------
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
--------------------------------------------------------------------
15 years, 6 months
Test Run Summary (Jul 01 2009): LXC on Fedora release 11.90 (Rawhide) with sfcb
by Kaitlin Rupert
=================================================
Test Run Summary (Jul 01 2009): LXC on Fedora release 11.90 (Rawhide) with sfcb
=================================================
Distro: Fedora release 11.90 (Rawhide)
Kernel: 2.6.27.15-170.2.24.fc10.x86_64
libvirt: 0.6.4
Hypervisor: QEMU 0.9.1
CIMOM: sfcb sfcbd 1.3.4preview
Libvirt-cim revision: 914
Libvirt-cim changeset: 2f0fb9e5d523
Cimtest revision: 709
Cimtest changeset: 479f287a17fd
=================================================
FAIL : 5
XFAIL : 9
SKIP : 39
PASS : 105
-----------------
Total : 158
=================================================
FAIL Test Summary:
RASD - 01_verify_rasd_fields.py: FAIL
ServiceAffectsElement - 01_forward.py: FAIL
ServiceAffectsElement - 02_reverse.py: FAIL
SettingsDefine - 02_reverse.py: FAIL
SystemDevice - 01_forward.py: FAIL
=================================================
XFAIL Test Summary:
ComputerSystem - 06_paused_active_suspend.py: XFAIL
ComputerSystem - 23_pause_pause.py: XFAIL
ComputerSystem - 32_start_reboot.py: XFAIL
ComputerSystem - 33_suspend_reboot.py: XFAIL
HostSystem - 02_hostsystem_to_rasd.py: XFAIL
HostedDependency - 03_enabledstate.py: XFAIL
VSSD - 04_vssd_to_rasd.py: XFAIL
VirtualSystemManagementService - 15_mod_system_settings.py: XFAIL
VirtualSystemSettingDataComponent - 02_reverse.py: XFAIL
=================================================
SKIP Test Summary:
ComputerSystem - 41_cs_to_settingdefinestate.py: SKIP
ComputerSystemIndication - 01_created_indication.py: SKIP
ElementAllocatedFromPool - 03_reverse_errs.py: SKIP
ElementAllocatedFromPool - 04_forward_errs.py: SKIP
LogicalDisk - 01_disk.py: SKIP
LogicalDisk - 03_ld_gi_errs.py: SKIP
NetworkPort - 01_netport.py: SKIP
NetworkPort - 02_np_gi_errors.py: SKIP
NetworkPort - 03_user_netport.py: SKIP
Processor - 01_processor.py: SKIP
Processor - 02_definesys_get_procs.py: SKIP
Processor - 03_proc_gi_errs.py: SKIP
RASD - 04_disk_rasd_size.py: SKIP
RASD - 05_disk_rasd_emu_type.py: SKIP
RASD - 06_parent_net_pool.py: SKIP
RASD - 07_parent_disk_pool.py: SKIP
ResourceAllocationFromPool - 05_RAPF_err.py: SKIP
ResourcePoolConfigurationService - 03_CreateResourcePool.py: SKIP
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: SKIP
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: SKIP
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: SKIP
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: SKIP
ResourcePoolConfigurationService - 08_CreateDiskResourcePool.py: SKIP
ResourcePoolConfigurationService - 09_DeleteDiskPool.py: SKIP
VSSD - 02_bootldr.py: SKIP
VirtualSystemManagementService - 06_addresource.py: SKIP
VirtualSystemManagementService - 08_modifyresource.py: SKIP
VirtualSystemManagementService - 09_procrasd_persist.py: SKIP
VirtualSystemManagementService - 11_define_memrasdunits.py: SKIP
VirtualSystemManagementService - 12_referenced_config.py: SKIP
VirtualSystemManagementService - 13_refconfig_additional_devs.py: SKIP
VirtualSystemManagementService - 16_removeresource.py: SKIP
VirtualSystemManagementService - 17_removeresource_neg.py: SKIP
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: SKIP
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
VirtualSystemMigrationService - 08_remote_restart_resume_migration.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: PASS
--------------------------------------------------------------------
ComputerSystem - 03_defineVS.py: PASS
--------------------------------------------------------------------
ComputerSystem - 04_defineStartVS.py: PASS
--------------------------------------------------------------------
ComputerSystem - 05_activate_defined_start.py: PASS
--------------------------------------------------------------------
ComputerSystem - 06_paused_active_suspend.py: XFAIL
ERROR - Got CIM error Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend with return code 1
ERROR - Exception variable: Unable pause dom 'DomST1'
InvokeMethod(RequestStateChange): Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend
Bug:<00011>
--------------------------------------------------------------------
ComputerSystem - 22_define_suspend.py: PASS
--------------------------------------------------------------------
ComputerSystem - 23_pause_pause.py: XFAIL
ERROR - Got CIM error Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend with return code 1
ERROR - Exception: 'Unable pause dom 'cs_test_domain''
InvokeMethod(RequestStateChange): Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend
Bug:<00011>
--------------------------------------------------------------------
ComputerSystem - 27_define_pause_errs.py: PASS
--------------------------------------------------------------------
ComputerSystem - 32_start_reboot.py: XFAIL
ERROR - Got CIM error 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): 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 State not supported with return code 7
ERROR - Exception: Unable Suspend dom 'test_domain'
InvokeMethod(RequestStateChange): State not supported
Bug:<00012>
--------------------------------------------------------------------
ComputerSystem - 35_start_reset.py: PASS
--------------------------------------------------------------------
ComputerSystem - 40_RSC_start.py: PASS
--------------------------------------------------------------------
ComputerSystem - 41_cs_to_settingdefinestate.py: SKIP
--------------------------------------------------------------------
ComputerSystem - 42_cs_gi_errs.py: PASS
--------------------------------------------------------------------
ComputerSystemIndication - 01_created_indication.py: SKIP
--------------------------------------------------------------------
ElementAllocatedFromPool - 01_forward.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 02_reverse.py: PASS
--------------------------------------------------------------------
ElementAllocatedFromPool - 03_reverse_errs.py: SKIP
--------------------------------------------------------------------
ElementAllocatedFromPool - 04_forward_errs.py: SKIP
--------------------------------------------------------------------
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: XFAIL
ERROR - InstanceID Mismatch
ERROR - Returned CrossClass_GuestDom/mouse:xen instead of CrossClass_GuestDom/mouse:usb
Class not found
Bug:<00009>
--------------------------------------------------------------------
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: XFAIL
ERROR - Exception: (1, u'Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend')
ERROR - Failed to suspend the dom: hd_domain1
InvokeMethod(RequestStateChange): Unable to pause domain: this function is not supported by the hypervisor: virDomainSuspend
Bug:<00011>
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
LogicalDisk - 02_nodevs.py: PASS
--------------------------------------------------------------------
LogicalDisk - 03_ld_gi_errs.py: SKIP
--------------------------------------------------------------------
Memory - 01_memory.py: PASS
--------------------------------------------------------------------
Memory - 02_defgetmem.py: PASS
--------------------------------------------------------------------
Memory - 03_mem_gi_errs.py: PASS
--------------------------------------------------------------------
NetworkPort - 01_netport.py: SKIP
--------------------------------------------------------------------
NetworkPort - 02_np_gi_errors.py: SKIP
--------------------------------------------------------------------
NetworkPort - 03_user_netport.py: SKIP
--------------------------------------------------------------------
Processor - 01_processor.py: SKIP
--------------------------------------------------------------------
Processor - 02_definesys_get_procs.py: SKIP
--------------------------------------------------------------------
Processor - 03_proc_gi_errs.py: SKIP
--------------------------------------------------------------------
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: FAIL
ERROR - 6 assoc_info != 5 RASD insts
--------------------------------------------------------------------
RASD - 02_enum.py: PASS
--------------------------------------------------------------------
RASD - 03_rasd_errs.py: PASS
--------------------------------------------------------------------
RASD - 04_disk_rasd_size.py: SKIP
--------------------------------------------------------------------
RASD - 05_disk_rasd_emu_type.py: SKIP
--------------------------------------------------------------------
RASD - 06_parent_net_pool.py: SKIP
--------------------------------------------------------------------
RASD - 07_parent_disk_pool.py: SKIP
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 08_CreateDiskResourcePool.py: SKIP
--------------------------------------------------------------------
ResourcePoolConfigurationService - 09_DeleteDiskPool.py: SKIP
--------------------------------------------------------------------
ServiceAccessBySAP - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 02_reverse.py: PASS
--------------------------------------------------------------------
ServiceAffectsElement - 01_forward.py: FAIL
ERROR - Got more than one record for 'LXC_PointingDevice'
ERROR - Exception in fn verify_assoc()
ERROR - Exception details: Failed to get insts for domain SAE_dom
--------------------------------------------------------------------
ServiceAffectsElement - 02_reverse.py: FAIL
ERROR - Got more than one record for 'LXC_PointingDevice'
ERROR - Exception : Failed to get init_list
--------------------------------------------------------------------
SettingsDefine - 01_forward.py: PASS
--------------------------------------------------------------------
SettingsDefine - 02_reverse.py: FAIL
ERROR - Got 6 RASDs, expected 5
ERROR - Failed to verify RASDs
--------------------------------------------------------------------
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: FAIL
ERROR - Device Class mismatch
ERROR - Exception Expected Device class list: ['LXC_Memory', 'LXC_Processor']
Got: [u'LXC_DisplayController', u'LXC_LogicalDisk', u'LXC_Memory', u'LXC_PointingDevice']
--------------------------------------------------------------------
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: XFAIL
ERROR - InstanceID Mismatch
ERROR - Returned VSSDC_dom/mouse:xen instead of VSSDC_dom/mouse:usb
Bug:<00009>
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 07_addresource_neg.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 08_modifyresource.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 09_procrasd_persist.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 10_hv_version.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 11_define_memrasdunits.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 12_referenced_config.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 13_refconfig_additional_devs.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 14_define_sys_disk.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 15_mod_system_settings.py: XFAIL
ERROR - rstest_domain not updated properly.
ERROR - Exp AutomaticRecoveryAction=3, got 2
Bug:<00008>
--------------------------------------------------------------------
VirtualSystemManagementService - 16_removeresource.py: SKIP
--------------------------------------------------------------------
VirtualSystemManagementService - 17_removeresource_neg.py: SKIP
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationSettingData - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationSettingData - 02_vsmsd_gi_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 01_forward.py: PASS
--------------------------------------------------------------------
VirtualSystemSettingDataComponent - 02_reverse.py: XFAIL
ERROR - Returned VSSDC_dom/mouse:xen instead of VSSDC_dom/mouse:usb
Bug:<00009>
--------------------------------------------------------------------
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
--------------------------------------------------------------------
15 years, 6 months
Test Run Summary (Jun 30 2009): KVM on Fedora release 11.90 (Rawhide) with sfcb
by Kaitlin Rupert
=================================================
Test Run Summary (Jun 30 2009): KVM on Fedora release 11.90 (Rawhide) with sfcb
=================================================
Distro: Fedora release 11.90 (Rawhide)
Kernel: 2.6.27.15-170.2.24.fc10.x86_64
libvirt: 0.6.4
Hypervisor: QEMU 0.9.1
CIMOM: sfcb sfcbd 1.3.4preview
Libvirt-cim revision: 898
Libvirt-cim changeset: a57141febd4a
Cimtest revision: 709
Cimtest changeset: 479f287a17fd
=================================================
FAIL : 5
XFAIL : 3
SKIP : 7
PASS : 143
-----------------
Total : 158
=================================================
FAIL Test Summary:
ComputerSystemIndication - 01_created_indication.py: FAIL
RASD - 07_parent_disk_pool.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
VirtualSystemManagementService - 15_mod_system_settings.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:
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
VirtualSystemMigrationService - 06_remote_live_migration.py: SKIP
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
VirtualSystemMigrationService - 08_remote_restart_resume_migration.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: PASS
--------------------------------------------------------------------
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 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): 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 State not supported with return code 7
ERROR - Exception: Unable Suspend dom 'test_domain'
InvokeMethod(RequestStateChange): 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 - Exception : Request Failed: 200
Traceback (most recent call last):
File "./lib/XenKvmLib/const.py", line 139, in do_try
File "01_created_indication.py", line 146, in main
sub_list, ind_names, dict = sub_ind(ip, virt)
File "01_created_indication.py", line 60, in sub_ind
sub.subscribe(dict['default_url'], dict['default_auth'])
File "/data/users/kaitlin/sandbox/cimtest/suites/libvirt-cim/lib/XenKvmLib/indication_tester.py", line 345, in subscribe
"CreateInstance", auth_hdr)
File "/data/users/kaitlin/sandbox/cimtest/suites/libvirt-cim/lib/XenKvmLib/indication_tester.py", line 330, in __do_cimpost
(resp.status, resp.reason))
Exception: Request Failed: 200
ERROR - None
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
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
ERROR - Exception details: Got 5 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: FAIL
ERROR - Exception in create_pool()
ERROR - Exception details: (1, u'Pool with that name already exists')
ERROR - Error in networkpool creation
InvokeMethod(CreateChildResourcePool): Pool with that name already exists
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Exception in create_pool()
ERROR - Exception details: (1, u'*** Provider Virt_ResourcePoolConfigurationService(1646) exiting due to a SIGSEGV signal ')
ERROR - Error in networkpool creation
InvokeMethod(CreateChildResourcePool): *** Provider Virt_ResourcePoolConfigurationService(1646) exiting due to a SIGSEGV signal
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 14_define_sys_disk.py: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 15_mod_system_settings.py: FAIL
ERROR - CIMError : (1, u'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/kaitlin/sandbox/cimtest/lib/CimTest/CimExt.py", line 32, in __call__
return self.__invoker(self.__name, args)
File "/data/users/kaitlin/sandbox/cimtest/lib/CimTest/CimExt.py", line 44, in __invoke
return self.conn.InvokeMethod(method, self.inst, **params)
File "/usr/lib/python2.5/site-packages/pywbem/cim_operations.py", line 801, in InvokeMethod
result = self.methodcall(MethodName, obj, **params)
File "/usr/lib/python2.5/site-packages/pywbem/cim_operations.py", line 362, in methodcall
raise CIMError(code, tt[0][1]['DESCRIPTION'])
CIMError: (1, u'Unable to parse embedded object')
ERROR - None
InvokeMethod(ModifySystemSettings): Unable to parse embedded object
--------------------------------------------------------------------
VirtualSystemManagementService - 16_removeresource.py: XFAIL
ERROR - 0 RASD insts for domain/mouse:ps2
No such instance (no device domain/mouse:ps2)
Bug:<00014>
--------------------------------------------------------------------
VirtualSystemManagementService - 17_removeresource_neg.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: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 07_remote_offline_migration.py: SKIP
--------------------------------------------------------------------
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: SKIP
--------------------------------------------------------------------
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
--------------------------------------------------------------------
15 years, 6 months
[PATCH] [TEST] #3 Adding new tc to verify fs storage pool creation
by Deepti B. Kalakeri
# HG changeset patch
# User Deepti B. Kalakeri<deeptik(a)linux.vnet.ibm.com>
# Date 1246370002 25200
# Node ID 479f287a17fd08e4e22ac37459393f6f8327315a
# Parent fe9471d9dd3372b673da5596a18cc49e553b13fa
[TEST] #3 Adding new tc to verify fs storage pool creation.
Updates in patch 3:
-------------------
1) Used the pre_check from XenKvmLib.common_util
2) imported PASS /FAIL from CimTest.ReturnCodes
3) Modified the verify_pool()
4) Modified the clean_up()
5) Addressed some minor typos
Update in patch 2:
------------------
1) rearranged import stmst
2) add check to see if cimserver is started
3) Added options to clean the old log
4) Added options to get the debug msg on the stdout
5) Added lxc support
6) Moved the looping for setting the poolsettings in a function
7) Rectified the virt_type to virt and also to use KVM for checking while setting vuri
Patch 1:
--------
This tc will not be run in the batch mode of cimtest and hence needs to
be run individually using the command below.
python create_verify_storagepool.py -t 2 -d /dev/sda4 -m /tmp/mnt -n diskfs
-v Xen -u <username> -p <passwd>
Tested with Xen on RHEL with current sources for fs type pool.
Will Update the patch to include logical pool verification as well.
Signed-off-by: Deepti B. Kalakeri <deeptik(a)linux.vnet.ibm.com>
diff -r fe9471d9dd33 -r 479f287a17fd suites/libvirt-cim/misc_cimtests/create_verify_storagepool.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/suites/libvirt-cim/misc_cimtests/create_verify_storagepool.py Tue Jun 30 06:53:22 2009 -0700
@@ -0,0 +1,356 @@
+#!/usr/bin/python
+#
+# Copyright 2009 IBM Corp.
+#
+# Authors:
+# Deepti B. Kalakeri<dkalaker(a)in.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
+#
+# This test case should test the CreateChildResourcePool service
+# supplied by the RPCS provider.
+# This tc verifies the FileSystem Type storage pool.
+#
+# The test case is not run in the batch run and we need to run it using
+# the following command:
+# python create_verify_storagepool.py -t 2 -d /dev/sda4 -m /tmp/mnt -n diskfs
+# -v Xen -u <username> -p <passwd>
+#
+# Where t can be :
+# 2 - FileSystem
+# 4 - Logical etc
+#
+#
+# Date : 27.06.2009
+
+import os
+import sys
+from optparse import OptionParser
+from commands import getstatusoutput
+from distutils.text_file import TextFile
+from pywbem import WBEMConnection, cim_types, CIMInstanceName
+sys.path.append('../../../lib')
+from CimTest import Globals
+from CimTest.Globals import logger, log_param
+from CimTest.ReturnCodes import PASS, FAIL
+sys.path.append('../lib')
+from XenKvmLib.classes import inst_to_mof, get_typed_class
+from XenKvmLib.pool import get_pool_rasds
+from XenKvmLib.common_util import pre_check
+from XenKvmLib.enumclass import EnumInstances
+
+TEST_LOG="cimtest.log"
+
+supp_types = [ 'Xen', 'KVM' , 'LXC' ]
+pool_types = { 'DISK_POOL_FS' : 2 }
+
+def verify_cmd_options(options):
+ try:
+ if options.part_dev == None:
+ raise Exception("Free Partition to be mounted not specified")
+
+ if options.mnt_pt == None:
+ raise Exception("Mount points to be used not specified")
+
+ if options.pool_name == None:
+ raise Exception("Must specify the Pool Name to be created")
+
+ if options.virt == None or options.virt not in supp_types:
+ raise Exception("Must specify virtualization type")
+
+ if options.pool_type == None:
+ raise Exception("Must specify pool type to be tested")
+
+ except Exception, details:
+ print "FATAL: ", details
+ print parser.print_help()
+ return FAIL
+
+ return PASS
+
+def env_setup(sysname, virt, clean, debug):
+ env_ready = pre_check(sysname, virt)
+ if env_ready != None:
+ print "\n%s. Please check your environment.\n" % env_ready
+ return FAIL
+
+ if clean:
+ cmd = "rm -f %s" % (os.path.join(os.getcwd(), TEST_LOG))
+ status, output = getstatusoutput(cmd)
+
+ if debug:
+ dbg = "-d"
+ else:
+ dbg = ""
+
+ return PASS
+
+def get_pooltype(pooltype, virt):
+ if pooltype == "fs":
+ pool_type = pool_types['DISK_POOL_FS']
+ else:
+ logger.error("Invalid pool type ....")
+ return None, None
+ return PASS, pool_type
+
+def verify_inputs(part_dev, mount_pt):
+ del_dir = False
+ cmd = "mount"
+ status, mount_info = getstatusoutput(cmd)
+ if status != PASS:
+ logger.error("Failed to get mount info.. ")
+ return FAIL, del_dir
+
+ for line in mount_info.split('\n'):
+ try:
+ # Check if the specified partition is mounted before using it
+ part_name = line.split()[0]
+ if part_dev == part_name:
+ logger.error("[%s] already mounted", part_dev)
+ raise Exception("Please specify free partition other than " \
+ "[%s]" % part_dev)
+
+ # Check if mount point is already used for mounting
+ mount_name = line.split()[2]
+ if mount_pt == mount_name:
+ logger.error("[%s] already mounted", mount_pt)
+ raise Exception("Please specify dir other than [%s]" %mount_pt)
+
+ except Exception, details:
+ logger.error("%s", details)
+ return FAIL, del_dir
+
+ # Check if the mount point specified already exist, if not then create it..
+ if not os.path.exists(mount_pt):
+ os.mkdir(mount_pt)
+
+ # set del_dir to True so that we remove it before exiting from the tc.
+ del_dir = True
+ else:
+ # Check if the mount point specified is a dir
+ if not os.path.isdir(mount_pt):
+ logger.error("The mount point [%s] should be a dir", mount_pt)
+ return FAIL, del_dir
+
+ files = os.listdir(mount_pt)
+ if len(files) != 0:
+ logger.info("The mount point [%s] given is not empty", mount_pt)
+
+ return PASS, del_dir
+
+def get_uri(virt):
+ if virt == 'Xen':
+ vuri = 'xen:///'
+ elif virt == 'KVM':
+ vuri = 'qemu:///system'
+ elif virt == 'LXC':
+ vuri = 'lxc:///system'
+ return vuri
+
+def get_pool_settings(dp_rasds, pooltype, part_dev, mount_pt, pool_name):
+ pool_settings = None
+ for dpool_rasd in dp_rasds:
+ if dpool_rasd['Type'] == pooltype and \
+ dpool_rasd['InstanceID'] == 'Default':
+ dpool_rasd['DevicePaths'] = [part_dev]
+ dpool_rasd['Path'] = mount_pt
+ dp_pid = "%s/%s" % ("DiskPool", pool_name)
+ dpool_rasd['PoolID'] = dpool_rasd['InstanceID'] = dp_pid
+ break
+
+ if not pool_name in dpool_rasd['InstanceID']:
+ return pool_settings
+
+ pool_settings = inst_to_mof(dpool_rasd)
+ return pool_settings
+
+
+def verify_pool(sysname, virt, pool_name, dp_cn):
+ try:
+ pool = EnumInstances(sysname, dp_cn)
+ for dpool in pool:
+ ret_pool = dpool.InstanceID
+ if pool_name == ret_pool:
+ logger.info("Found the pool '%s'", pool_name)
+ return PASS
+ except Exception, details:
+ logger.error("Exception details: %s", details)
+
+ return FAIL
+
+def cleanup(virt, rpcs_conn, rpcs_cn, dp_cn, dp_id,
+ pool_name, sysname, mount_pt, del_dir, res):
+
+ if res == PASS:
+ pool_settings = CIMInstanceName(dp_cn, namespace=Globals.CIM_NS,
+ keybindings = {'InstanceID': dp_id})
+ rpcs_conn.InvokeMethod("DeleteResourcePool",
+ rpcs_cn,
+ Pool = pool_settings)
+ pool = EnumInstances(sysname, dp_cn)
+ for dpool in pool:
+ ret_pool = dpool.InstanceID
+ if ret_pool == dp_id:
+ logger.error("Failed to delete diskpool '%s'", pool_name)
+ return FAIL
+
+ if del_dir == True:
+ cmd ="rm -rf %s" % mount_pt
+ ret, out = getstatusoutput(cmd)
+ if ret != PASS:
+ logger.error("WARNING: '%s' was not removed", mount_pt)
+ logger.error("WARNING: Please remove %s manually", mount_pt)
+
+ return PASS
+
+
+def main():
+ usage = "usage: %prog [options] \nex: %prog -i localhost"
+ parser = OptionParser(usage)
+
+ parser.add_option("-i", "--host-url", dest="h_url", default="localhost:5988",
+ help="URL of CIMOM to connect to (host:port)")
+ parser.add_option("-N", "--ns", dest="ns", default="root/virt",
+ help="Namespace (default is root/virt)")
+ parser.add_option("-u", "--user", dest="username", default=None,
+ help="Auth username for CIMOM on source system")
+ parser.add_option("-p", "--pass", dest="password", default=None,
+ help="Auth password for CIMOM on source system")
+ parser.add_option("-v", "--virt-type", dest="virt", default=None,
+ help="Virtualization type [ Xen | KVM ]")
+ parser.add_option("-t", "--pool-type", dest="pool_type", default=None,
+ help="Pool type:[ fs | logical ]")
+ parser.add_option("-d", "--part-dev", dest="part_dev", default=None,
+ help="specify the free partition to be used")
+ parser.add_option("-m", "--mnt_pt", dest="mnt_pt", default=None,
+ help="Mount point to be used")
+ parser.add_option("-n", "--pool-name", dest="pool_name", default=None,
+ help="Pool to be created")
+ parser.add_option("-c", "--clean-log",
+ action="store_true", dest="clean",
+ help="Will remove existing log files before test run")
+ parser.add_option("-l", "--debug-output", action="store_true", dest="debug",
+ help="Duplicate the output to stderr")
+
+ (options, args) = parser.parse_args()
+
+ # Verify command line options
+ status = verify_cmd_options(options)
+ if status != PASS:
+ return status
+
+ part_dev = options.part_dev
+ mount_pt = options.mnt_pt
+ pool_name = options.pool_name
+ virt = options.virt
+
+ if ":" in options.h_url:
+ (sysname, port) = options.h_url.split(":")
+ else:
+ sysname = options.h_url
+
+ # Verify if the CIMOM is running, clean cimtest.log if requested
+ # Set Debug option if requested
+ status = env_setup(sysname, virt, options.clean, options.debug)
+ if status != PASS:
+ return status
+
+ log_param(file_name=TEST_LOG)
+
+ print "Please check cimtest.log in the curr dir for debug log msgs..."
+
+ status, pooltype = get_pooltype(options.pool_type, virt)
+ if status != PASS:
+ return FAIL
+
+ pooltype = cim_types.Uint16(pooltype)
+
+ status, del_dir = verify_inputs(part_dev, mount_pt)
+ if status != PASS:
+ if del_dir == True:
+ cmd ="rm -rf %s" % mount_pt
+ status, out = getstatusoutput(cmd)
+ logger.error("Input verification failed")
+ return status
+
+
+ os.environ['CIM_NS'] = Globals.CIM_NS = options.ns
+ os.environ['CIM_USER'] = Globals.CIM_USER = options.username
+ os.environ['CIM_PASS'] = Globals.CIM_PASS = options.password
+ cn = "DiskPool"
+ dp_cn = get_typed_class(virt, cn)
+ dp_id = "%s/%s" % (cn, pool_name)
+ rpcs_cn = get_typed_class(virt, "ResourcePoolConfigurationService")
+
+ status = verify_pool(sysname, virt, dp_id, dp_cn)
+ if status == PASS:
+ logger.error("Pool --> '%s' already exist", pool_name)
+ logger.error("Specify some other pool name")
+ return status
+
+ res = [FAIL]
+ try:
+ src_conn = WBEMConnection('http://%s' % sysname, (options.username,
+ options.password), options.ns)
+
+ # Get DiskPoolRASD's from SDC association with AC of DiskPool/0
+ status, dp_rasds = get_pool_rasds(sysname, virt, cn)
+ if status != PASS:
+ raise Exception("Failed to get DiskPool Rasd's")
+
+ # Get the DiskPoolRASD mof with appropriate values of diskpool
+ # to be created....
+ pool_settings = get_pool_settings(dp_rasds, pooltype, part_dev,
+ mount_pt, pool_name)
+ if pool_settings == None:
+ raise Exception("Did not get the required pool settings ...")
+
+ # Create DiskPool..
+ res = src_conn.InvokeMethod("CreateChildResourcePool",
+ rpcs_cn,
+ Settings=[pool_settings],
+ ElementName=pool_name)
+
+ except Exception, details:
+ logger.error("In main(), exception '%s'", details)
+
+ # Verify if the desired pool was successfully created ..
+ if res[0] == PASS:
+ status = verify_pool(sysname, virt, dp_id, dp_cn)
+ if status != PASS:
+ logger.error("Failed to verify pool: %s " % pool_name)
+
+ # Clean up the pool and the mount dir that was created ...
+ status = cleanup(virt, src_conn, rpcs_cn, dp_cn, dp_id,
+ pool_name, sysname, mount_pt, del_dir, res[0])
+
+ if res[0] == PASS and status == PASS:
+ logger.info("Pool %s was successfully verified for pool type %s",
+ pool_name , options.pool_type)
+
+ # Place holder to give a hint to the user the tc passed
+ # otherwise the user will have to look into the cimtest.log in the
+ # current dir.
+ print "Pool '", pool_name,"' was successfully verified for pool type "\
+ "'", options.pool_type , "'"
+ return PASS
+ else:
+ logger.error("Test Failed to verify '%s' pool creation ....",
+ options.pool_type)
+ return FAIL
+if __name__=="__main__":
+ sys.exit(main())
+
15 years, 6 months
[PATCH] [TEST] Moving the pre_check() fn from main.py to common_util.py
by Deepti B. Kalakeri
# HG changeset patch
# User Deepti B. Kalakeri<deeptik(a)linux.vnet.ibm.com>
# Date 1246342361 25200
# Node ID fe9471d9dd3372b673da5596a18cc49e553b13fa
# Parent d67a606da9f7d631368d04280865eb9a21e7ea8a
[TEST] Moving the pre_check() fn from main.py to common_util.py
Tested with KVM and current sources on F10.
Signed-off-by: Deepti B. Kalakeri <deeptik(a)linux.vnet.ibm.com>
diff -r d67a606da9f7 -r fe9471d9dd33 suites/libvirt-cim/lib/XenKvmLib/common_util.py
--- a/suites/libvirt-cim/lib/XenKvmLib/common_util.py Fri May 29 13:59:02 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/common_util.py Mon Jun 29 23:12:41 2009 -0700
@@ -229,6 +229,41 @@
profiles[key]['InstanceID'] = 'CIM:' + key
return profiles
+def pre_check(ip, virt):
+ cmd = "virsh -c %s list --all" % virt2uri(virt)
+ ret, out = utils.run_remote(ip, cmd)
+ if ret != 0:
+ return "This libvirt install does not support %s" % virt
+
+ cmd = "virsh -c %s version" % virt2uri(virt)
+ ret, out = utils.run_remote(ip, cmd)
+ if ret != 0:
+ # The above version cmd does not work for F10.
+ # Hence, this is a workaround to verify if qemu and qemu-kvm
+ # are installed in case the above version cmd fails.
+ cmd = "qemu -help"
+ ret, out = utils.run_remote(ip, cmd)
+ if ret != 0:
+ cmd = "qemu-kvm -help"
+ ret, out = utils.run_remote(ip, cmd)
+ if ret != 0:
+ return "Encountered an error querying for qemu-kvm and qemu "
+
+ cmd = "ps -ef | grep -v grep | grep cimserver"
+ rc, out = utils.run_remote(ip, cmd)
+ if rc != 0:
+ cmd = "ps -ef | grep -v grep | grep sfcbd"
+ rc, out = utils.run_remote(ip, cmd)
+ if rc != 0:
+ return "A supported CIMOM is not running"
+
+ cmd = "ps -ef | grep -v grep | grep libvirtd"
+ rc, out = utils.run_remote(ip, cmd)
+ if rc != 0:
+ return "libvirtd is not running"
+
+ return None
+
def conf_file():
"""
Creating diskpool.conf file.
diff -r d67a606da9f7 -r fe9471d9dd33 suites/libvirt-cim/main.py
--- a/suites/libvirt-cim/main.py Fri May 29 13:59:02 2009 -0700
+++ b/suites/libvirt-cim/main.py Mon Jun 29 23:12:41 2009 -0700
@@ -39,7 +39,8 @@
from XenKvmLib.xm_virt_util import virt2uri
from CimTest.ReturnCodes import PASS, FAIL
from XenKvmLib.common_util import create_netpool_conf, destroy_netpool, \
- create_diskpool_conf, destroy_diskpool
+ create_diskpool_conf, destroy_diskpool, \
+ pre_check
parser = OptionParser()
parser.add_option("-i", "--ip", dest="ip", default="localhost",
@@ -92,40 +93,6 @@
print "Cleaned log files."
-def pre_check(ip, virt):
- cmd = "virsh -c %s list --all" % virt2uri(virt)
- ret, out = utils.run_remote(ip, cmd)
- if ret != 0:
- return "This libvirt install does not support %s" % virt
-
- cmd = "virsh -c %s version" % virt2uri(virt)
- ret, out = utils.run_remote(ip, cmd)
- if ret != 0:
- # The above version cmd does not work for F10.
- # Hence, this is a workaround to verify if qemu and qemu-kvm
- # are installed in case the above version cmd fails.
- cmd = "qemu -help"
- ret, out = utils.run_remote(ip, cmd)
- if ret != 0:
- cmd = "qemu-kvm -help"
- ret, out = utils.run_remote(ip, cmd)
- if ret != 0:
- return "Encountered an error querying for qemu-kvm and qemu "
-
- cmd = "ps -ef | grep -v grep | grep cimserver"
- rc, out = utils.run_remote(ip, cmd)
- if rc != 0:
- cmd = "ps -ef | grep -v grep | grep sfcbd"
- rc, out = utils.run_remote(ip, cmd)
- if rc != 0:
- return "A supported CIMOM is not running"
-
- cmd = "ps -ef | grep -v grep | grep libvirtd"
- rc, out = utils.run_remote(ip, cmd)
- if rc != 0:
- return "libvirtd is not running"
-
- return None
def get_rcfile_vals():
if not os.access(CIMTEST_RCFILE, os.R_OK):
15 years, 6 months