[PATCH] Work around for sfcb's lack of association handling
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1240873892 25200
# Node ID 1cb3975921d590d4dda4de197a4dc687e45d1840
# Parent d4a9e07d6738f76780bcb1ada5b7c0dbc57e4e0f
Work around for sfcb's lack of association handling
If a association provider has multiple classes listed, and a user queries with
the super class for the classes listed in the registration, the provider is
not called each time for each class. Instead, the provider is called once.
This logic detects whether the association classname specified for by the user
is an exact match of one of the classnames in the registration. If it is,
the provider is only called once. If the classname is a super class, then the
provider is called once for each class listed in the registration.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r d4a9e07d6738 -r 1cb3975921d5 std_association.c
--- a/std_association.c Thu Jan 22 11:33:20 2009 -0800
+++ b/std_association.c Mon Apr 27 16:11:32 2009 -0700
@@ -274,6 +274,56 @@
return s;
}
+static bool do_generic_assoc_call(struct std_assoc_info *info,
+ struct std_assoc *handler)
+{
+ int i;
+
+ if (info->assoc_class == NULL) {
+ return true;
+ } else {
+ for (i = 0; handler->assoc_class[i]; i++) {
+ if (STREQ(info->assoc_class, handler->assoc_class[i]))
+ return false;
+ }
+ }
+
+ return true;
+}
+
+static CMPIStatus handle_assoc(struct std_assoc_info *info,
+ const CMPIObjectPath *ref,
+ struct std_assoc *handler,
+ struct inst_list *list)
+{
+ CMPIStatus s = {CMPI_RC_OK, NULL};
+ int i;
+
+ if (do_generic_assoc_call(info, handler)) {
+ for (i = 0; handler->assoc_class[i]; i++) {
+ info->assoc_class = handler->assoc_class[i];
+
+ CU_DEBUG("Calling handler ...");
+ s = handler->handler(ref, info, list);
+ if (s.rc != CMPI_RC_OK) {
+ CU_DEBUG("Handler did not return CMPI_RC_OK.");
+ goto out;
+ }
+ }
+ } else {
+ CU_DEBUG("Calling handler ...");
+ s = handler->handler(ref, info, list);
+ if (s.rc != CMPI_RC_OK) {
+ CU_DEBUG("Handler did not return CMPI_RC_OK.");
+ goto out;
+ }
+ }
+ CU_DEBUG("Handler returned CMPI_RC_OK.");
+
+ out:
+ return s;
+}
+
static CMPIStatus do_assoc(struct std_assoc_ctx *ctx,
struct std_assoc_info *info,
const CMPIResult *results,
@@ -284,6 +334,7 @@
CMPIStatus s = {CMPI_RC_OK, NULL};
struct inst_list list;
struct std_assoc *handler;
+ int i;
CU_DEBUG("Getting handler ...");
handler = std_assoc_get_handler(ctx, info, ref);
@@ -295,13 +346,23 @@
inst_list_init(&list);
- CU_DEBUG("Calling handler ...");
- s = handler->handler(ref, info, &list);
- if (s.rc != CMPI_RC_OK) {
- CU_DEBUG("Handler did not return CMPI_RC_OK.");
- goto out;
+ if (do_generic_assoc_call(info, handler)) {
+ for (i = 0; handler->assoc_class[i]; i++) {
+ info->assoc_class = handler->assoc_class[i];
+
+ s = handle_assoc(info, ref, handler, &list);
+ if (s.rc != CMPI_RC_OK) {
+ CU_DEBUG("Failed to handle association");
+ goto out;
+ }
+ }
+ } else {
+ s = handle_assoc(info, ref, handler, &list);
+ if (s.rc != CMPI_RC_OK) {
+ CU_DEBUG("Failed to handle association");
+ goto out;
+ }
}
- CU_DEBUG("Handler returned CMPI_RC_OK.");
/* References and ReferenceNames */
if (ref_rslt)
@@ -320,6 +381,7 @@
CU_DEBUG("Prepare return list did not return CMPI_RC_OK.");
goto out;
}
+
CU_DEBUG("Returned %u instance(s).", list.cur);
if (names_only)
15 years, 7 months
[PATCH] Add ForwardDevice attribute for network pools
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1241132900 25200
# Node ID 327098c60da19f0f3c2c0a3ec69955503a16602a
# Parent 94b1108c2a8be28472a171d9a09d08a2580cc53f
Add ForwardDevice attribute for network pools
libvirt allows you to restrict the firewall rules of a pool so that traffic
is forwarded through a specific device.
Also, fix a bug where the value for ForwardMode specified by the user wasn't
being read in properly. Also change FowardMode to a value map attribute
instead of a string.
Fix a bug where the value for IPRangeStart is read in twice - IPRangeEnd wasn't
being read in at all.
Fix a bug in xmlgen code for the network pool forwarding device.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 94b1108c2a8b -r 327098c60da1 libxkutil/xmlgen.c
--- a/libxkutil/xmlgen.c Thu Apr 30 13:46:35 2009 -0700
+++ b/libxkutil/xmlgen.c Thu Apr 30 16:08:20 2009 -0700
@@ -785,7 +785,7 @@
if (xmlNewProp(forward,
BAD_CAST "dev",
BAD_CAST pool->forward_dev) == NULL)
- goto out;
+ goto out;
}
}
diff -r 94b1108c2a8b -r 327098c60da1 schema/ResourceAllocationSettingData.mof
--- a/schema/ResourceAllocationSettingData.mof Thu Apr 30 13:46:35 2009 -0700
+++ b/schema/ResourceAllocationSettingData.mof Thu Apr 30 16:08:20 2009 -0700
@@ -171,7 +171,12 @@
string Netmask;
string IPRangeStart;
string IPRangeEnd;
- string ForwardMode;
+ string ForwardDevice;
+
+ [Description ("Network pool forwarding mode"),
+ ValueMap {"0", "1", "2"},
+ Values {"None", "NAT", "Routed"}]
+ uint16 ForwardMode;
};
[Description ("KVM virtual network pool settings"),
@@ -182,7 +187,12 @@
string Netmask;
string IPRangeStart;
string IPRangeEnd;
- string ForwardMode;
+ string ForwardDevice;
+
+ [Description ("Network pool forwarding mode"),
+ ValueMap {"0", "1", "2"},
+ Values {"None", "NAT", "Routed"}]
+ uint16 ForwardMode;
};
[Description ("LXC virtual network pool settings"),
@@ -193,7 +203,12 @@
string Netmask;
string IPRangeStart;
string IPRangeEnd;
- string ForwardMode;
+ string ForwardDevice;
+
+ [Description ("Network pool forwarding mode"),
+ ValueMap {"0", "1", "2"},
+ Values {"None", "NAT", "Routed"}]
+ uint16 ForwardMode;
};
[Description ("Xen virtual disk pool settings"),
diff -r 94b1108c2a8b -r 327098c60da1 src/Virt_ResourcePoolConfigurationService.c
--- a/src/Virt_ResourcePoolConfigurationService.c Thu Apr 30 13:46:35 2009 -0700
+++ b/src/Virt_ResourcePoolConfigurationService.c Thu Apr 30 16:08:20 2009 -0700
@@ -82,6 +82,7 @@
{
const char *val = NULL;
const char *msg = NULL;
+ uint16_t type;
/*FIXME: Need to add validation of addresses if user specified */
@@ -103,12 +104,37 @@
free(pool->pool_info.net.ip_start);
pool->pool_info.net.ip_start = strdup(val);
- if (cu_get_str_prop(inst, "IPRangeStart", &val) != CMPI_RC_OK)
+ if (cu_get_str_prop(inst, "IPRangeEnd", &val) != CMPI_RC_OK)
val = "192.168.122.254";
free(pool->pool_info.net.ip_end);
pool->pool_info.net.ip_end = strdup(val);
+ if (cu_get_u16_prop(inst, "ForwardMode", &type) != CMPI_RC_OK) {
+ pool->pool_info.net.forward_mode = strdup("nat");
+ } else {
+ free(pool->pool_info.net.forward_mode);
+
+ switch (type) {
+ case NETPOOL_FORWARD_NONE:
+ pool->pool_info.net.forward_mode = NULL;
+ break;
+ case NETPOOL_FORWARD_NAT:
+ pool->pool_info.net.forward_mode = strdup("nat");
+ break;
+ case NETPOOL_FORWARD_ROUTED:
+ pool->pool_info.net.forward_mode = strdup("route");
+ break;
+ default:
+ return "Storage pool type not supported";
+ }
+ }
+
+ if (cu_get_str_prop(inst, "ForwardDevice", &val) == CMPI_RC_OK) {
+ free(pool->pool_info.net.forward_dev);
+ pool->pool_info.net.forward_dev = strdup(val);
+ }
+
return msg;
}
diff -r 94b1108c2a8b -r 327098c60da1 src/svpc_types.h
--- a/src/svpc_types.h Thu Apr 30 13:46:35 2009 -0700
+++ b/src/svpc_types.h Thu Apr 30 16:08:20 2009 -0700
@@ -66,6 +66,10 @@
#define CIM_SAP_INACTIVE_STATE 3
#define CIM_SAP_AVAILABLE_STATE 6
+#define NETPOOL_FORWARD_NONE 0
+#define NETPOOL_FORWARD_NAT 1
+#define NETPOOL_FORWARD_ROUTED 2
+
#include <libcmpiutil/libcmpiutil.h>
#include <string.h>
15 years, 7 months
Test Run Summary (Apr 29 2009): Xen on Red Hat Enterprise Linux Server release 5.3 (Tikanga) with Pegasus
by Deepti B Kalakeri
=================================================
Test Run Summary (Apr 29 2009): Xen on Red Hat Enterprise Linux Server release 5.3 (Tikanga) with Pegasus
=================================================
Distro: Red Hat Enterprise Linux Server release 5.3 (Tikanga)
Kernel: 2.6.18-128.el5xen
libvirt: 0.3.3
Hypervisor: Xen 3.1.0
CIMOM: Pegasus 2.7.1
Libvirt-cim revision: 861
Libvirt-cim changeset: e5000891e231
Cimtest revision:
Cimtest changeset:
=================================================
FAIL : 7
XFAIL : 2
SKIP : 3
PASS : 139
-----------------
Total : 151
=================================================
FAIL Test Summary:
ComputerSystem - 32_start_reboot.py: FAIL
HostSystem - 03_hs_to_settdefcap.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefineCapabilities - 01_forward.py: FAIL
VirtualSystemMigrationService - 01_migratable_host.py: FAIL
VirtualSystemMigrationService - 02_host_migrate_type.py: FAIL
=================================================
XFAIL Test Summary:
ComputerSystem - 33_suspend_reboot.py: XFAIL
VirtualSystemManagementService - 16_removeresource.py: XFAIL
=================================================
SKIP Test Summary:
ComputerSystem - 02_nosystems.py: SKIP
LogicalDisk - 02_nodevs.py: SKIP
NetworkPort - 03_user_netport.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
--------------------------------------------------------------------
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: FAIL
ERROR - Unable to check guest state
ERROR - Exception: Wrong guest instance
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: Wrong guest instance
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Unable to check guest state
ERROR - Exception: EnabledState is 3, expected 2.
ERROR - Exception: Unable reboot dom 'cs_test_domain'
CIM_ERR_FAILED: Unable to get domain information: internal error domain information incomplete, missing id
CIM_ERR_NOT_FOUND: Referenced domain `cs_test_domain' does not exist: internal error failed to parse Xend domain information
--------------------------------------------------------------------
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: 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: FAIL
ERROR - 'Xen_SettingsDefineCapabilities' returned 8 RASD objects instead of 4
CIM_ERR_INVALID_CLASS: Linux_ComputerSystem
--------------------------------------------------------------------
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: SKIP
--------------------------------------------------------------------
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
--------------------------------------------------------------------
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 - Unexpected rc code 4 and description CIM_ERR_INVALID_PARAMETER
InvokeMethod(CreateChildResourcePool): CIM_ERR_INVALID_PARAMETER
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Unexpected rc code 4 and description CIM_ERR_INVALID_PARAMETER
InvokeMethod(DeleteResourcePool): CIM_ERR_INVALID_PARAMETER
--------------------------------------------------------------------
ServiceAccessBySAP - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 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 - Xen_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: PASS
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
VirtualSystemManagementService - 16_removeresource.py: XFAIL
ERROR - 0 RASD insts for domain/mouse:xen
CIM_ERR_NOT_FOUND: No such instance (no device domain/mouse:xen)
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: FAIL
ERROR - Error create domain dom_migrate
--------------------------------------------------------------------
VirtualSystemMigrationService - 02_host_migrate_type.py: FAIL
ERROR - Migration verification for 'dom_migrate' failed
--------------------------------------------------------------------
VirtualSystemMigrationService - 05_migratable_host_errs.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationService - 06_remote_live_migration.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationService - 07_remote_offline_migration.py: PASS
--------------------------------------------------------------------
VirtualSystemMigrationService - 08_remote_restart_resume_migration.py: PASS
--------------------------------------------------------------------
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
--------------------------------------------------------------------
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, 8 months
Test Run Summary (Apr 28 2009): KVM on Fedora release 10.90 (Rawhide) with Pegasus
by Guo Lian Yun
=================================================
Test Run Summary (Apr 28 2009): KVM on Fedora release 10.90 (Rawhide) with
Pegasus
=================================================
Distro: Fedora release 10.90 (Rawhide)
Kernel: 2.6.29-0.24.rc0.git13.fc11.x86_64
libvirt: 0.6.2
Hypervisor: QEMU 0.10.0
CIMOM: Pegasus 2.7.2
Libvirt-cim revision: 861
Libvirt-cim changeset: e5000891e231
Cimtest revision: 674
Cimtest changeset: e8dc06eefada
=================================================
FAIL : 6
XFAIL : 4
SKIP : 9
PASS : 132
-----------------
Total : 151
=================================================
FAIL Test Summary:
HostSystem - 03_hs_to_settdefcap.py: FAIL
RASD - 05_disk_rasd_emu_type.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefineCapabilities - 01_forward.py: FAIL
SystemDevice - 01_forward.py: FAIL
=================================================
XFAIL Test Summary:
ComputerSystem - 32_start_reboot.py: XFAIL
ComputerSystem - 33_suspend_reboot.py: XFAIL
VirtualSystemManagementService - 09_procrasd_persist.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
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: 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:
failed to set CPU affinity: No such process with return code 1
ERROR - Exception: Unable reboot dom 'cs_test_domain'
InvokeMethod(RequestStateChange): CIM_ERR_FAILED: Unable to reboot domain:
failed to set CPU affinity: No such process
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: 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: FAIL
ERROR - 'KVM_SettingsDefineCapabilities' returned 8 RASD
objects instead of 4
CIM_ERR_INVALID_CLASS: Linux_ComputerSystem
--------------------------------------------------------------------
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: FAIL
ERROR - Exception: EmulatedType Mismatch: got 0,expected 1
--------------------------------------------------------------------
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 - Unexpected rc code 4 and description
CIM_ERR_INVALID_PARAMETER
InvokeMethod(CreateChildResourcePool): CIM_ERR_INVALID_PARAMETER
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py:
PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Unexpected rc code 4 and description
CIM_ERR_INVALID_PARAMETER
InvokeMethod(DeleteResourcePool): CIM_ERR_INVALID_PARAMETER
--------------------------------------------------------------------
ServiceAccessBySAP - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 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 8 ResourcePool
objects instead of 4
--------------------------------------------------------------------
SettingsDefineCapabilities - 03_forward_errs.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 04_forward_vsmsdata.py: PASS
--------------------------------------------------------------------
SettingsDefineCapabilities - 05_reverse_vsmcap.py: PASS
--------------------------------------------------------------------
SystemDevice - 01_forward.py: FAIL
01_forward.py:29: DeprecationWarning: the sets module is deprecated
from sets import Set
ERROR - DeviceID mismatch
ERROR - Exception Expected DeviceID: ['test_domain/0',
'test_domain/1', 'test_domain/2']
Got: [u'test_domain/0']
--------------------------------------------------------------------
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: XFAIL
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
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
--------------------------------------------------------------------
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
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 02_vs_sservicecap_gi_errs.py:
PASS
--------------------------------------------------------------------
15 years, 8 months
Test Run Summary (Apr 28 2009): KVM on Fedora release 10 (Cambridge) with sfcb
by Guo Lian Yun
=================================================
Test Run Summary (Apr 28 2009): KVM on Fedora release 10 (Cambridge) with
sfcb
=================================================
Distro: Fedora release 10 (Cambridge)
Kernel: 2.6.27.15-170.2.24.fc10.x86_64
libvirt: 0.4.5
Hypervisor: QEMU 0.9.1
CIMOM: sfcb sfcbd 1.3.4preview
Libvirt-cim revision: 861
Libvirt-cim changeset: e5000891e231
Cimtest revision: 674
Cimtest changeset: e8dc06eefada
=================================================
FAIL : 5
XFAIL : 4
SKIP : 9
PASS : 133
-----------------
Total : 151
=================================================
FAIL Test Summary:
ComputerSystemIndication - 01_created_indication.py: FAIL
HostSystem - 03_hs_to_settdefcap.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefineCapabilities - 01_forward.py: FAIL
=================================================
XFAIL Test Summary:
ComputerSystem - 32_start_reboot.py: XFAIL
ComputerSystem - 33_suspend_reboot.py: XFAIL
VirtualSystemManagementService - 09_procrasd_persist.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
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: 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 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/daisy/cimtest/suites/libvirt-cim/lib/XenKvmLib/indication_tester.py",
line 345, in subscribe
"CreateInstance", auth_hdr)
File
"/data/users/daisy/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 8 RASD
objects instead of 4
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: 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
--------------------------------------------------------------------
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 - Unexpected rc code 4 and description One or more
parameter values passed to the method were invalid
InvokeMethod(CreateChildResourcePool): One or more parameter values passed
to the method were invalid
--------------------------------------------------------------------
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py:
PASS
--------------------------------------------------------------------
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Unexpected rc code 4 and description One or more
parameter values passed to the method were invalid
InvokeMethod(DeleteResourcePool): One or more parameter values passed to
the method were invalid
--------------------------------------------------------------------
ServiceAccessBySAP - 01_forward.py: PASS
--------------------------------------------------------------------
ServiceAccessBySAP - 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 8 ResourcePool
objects instead of 4
--------------------------------------------------------------------
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: XFAIL
--------------------------------------------------------------------
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: PASS
--------------------------------------------------------------------
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
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 01_enum.py: PASS
--------------------------------------------------------------------
VirtualSystemSnapshotServiceCapabilities - 02_vs_sservicecap_gi_errs.py:
PASS
--------------------------------------------------------------------
15 years, 8 months
[PATCH] [TEST] Add new tc to validate that the Disk child pool can be deleted through the providers
by yunguol@cn.ibm.com
# HG changeset patch
# User Guolian Yun <yunguol(a)cn.ibm.com>
# Date 1240827432 25200
# Node ID 43a14ac09f6fe1f55c2be730c62ea2f3fac24140
# Parent e8dc06eefada41252ba8d27b08fcef8ef6604251
[TEST] Add new tc to validate that the Disk child pool can be deleted through the providers
Tested for KVM with current sources
Signed-off-by: Guolian Yun<yunguol(a)cn.ibm.com>
diff -r e8dc06eefada -r 43a14ac09f6f suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/09_DeleteResourcePool_Disk.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/09_DeleteResourcePool_Disk.py Mon Apr 27 03:17:12 2009 -0700
@@ -0,0 +1,121 @@
+#!/usr/bin/python
+#
+# Copyright 2008 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 DeleteResourcePool service
+# supplied by the RPCS provider.
+# The DeleteResourcePool is used to delete a resource pool.
+# DeleteResourcePool() details:
+# Input
+# -----
+# IN -- Pool -- CIM_ResourcePool REF -- The resource pool to delete
+#
+# Output
+# ------
+# OUT -- Job -- CIM_ConcreteJob REF -- Returned job if started
+# OUT -- Error-- String -- Encoded error instance if the operation
+# failed and did not return a job.
+#
+# Exception details before Revision 841
+# -----
+# Error code: CIM_ERR_NOT_SUPPORTED
+#
+# After revision 841, the service is implemented
+#
+# -Date: 20.02.2008
+
+
+import sys
+import pywbem
+from XenKvmLib import rpcs_service
+from CimTest.Globals import logger, CIM_NS
+from CimTest.ReturnCodes import FAIL, PASS
+from XenKvmLib.const import do_main, platform_sup, get_provider_version
+from pywbem.cim_obj import CIMInstanceName, CIMInstance
+from XenKvmLib.enumclass import EnumInstances
+from XenKvmLib.classes import get_typed_class
+from pywbem.cim_types import Uint16
+
+cim_errno = pywbem.CIM_ERR_NOT_SUPPORTED
+cim_mname = "DeleteResourcePool"
+libvirt_cim_child_pool_rev = 841
+test_pool = "dir_pool"
+
+@do_main(platform_sup)
+def main():
+ status = FAIL
+ options = main.options
+ rpcs_conn = eval("rpcs_service." + get_typed_class(options.virt, \
+ "ResourcePoolConfigurationService"))(options.ip)
+ curr_cim_rev, changeset = get_provider_version(options.virt, options.ip)
+ if curr_cim_rev < libvirt_cim_child_pool_rev:
+ try:
+ rpcs_conn.DeleteResourcePool()
+ except pywbem.CIMError, (err_no, desc):
+ if err_no == cim_errno :
+ logger.info("Got expected exception for '%s' service", cim_mname)
+ logger.info("Errno is '%s' ", err_no)
+ logger.info("Error string is '%s'", desc)
+ return PASS
+ else:
+ logger.error("Unexpected rc code %s and description %s\n",
+ err_no, desc)
+ return FAIL
+ elif curr_cim_rev >= libvirt_cim_child_pool_rev:
+ dprasd = get_typed_class(options.virt,
+ 'DiskPoolResourceAllocationSettingData')
+ dp = get_typed_class(options.virt, 'DiskPool')
+ dp_id = 'DiskPool/%s' % test_pool
+ iname = CIMInstanceName(dprasd,
+ namespace = CIM_NS,
+ keybindings = {'InstanceID':dp_id})
+ dp_prop = {"Path" : "/tmp"}
+ if test_pool == "dir_pool":
+ dp_prop["Type"] = Uint16(1)
+ drasd = CIMInstance(dprasd, path = iname, properties = dp_prop)
+ try:
+ rpcs_conn.CreateChildResourcePool(ElementName=test_pool,
+ Settings=[drasd.tomof()])
+ diskpool = EnumInstances(options.ip, dp)
+ for i in range(0, len(diskpool)):
+ ret_pool = diskpool[i].InstanceID
+ if ret_pool == dp_id:
+ break
+ elif ret_pool != dp_id and i == len(diskpool) - 1:
+ raise Exception("Can not find expected pool")
+
+ pool = CIMInstanceName(dp, keybindings = {'InstanceID':dp_id})
+ rpcs_conn.DeleteResourcePool(Pool = pool)
+ diskpool = EnumInstances(options.ip, dp)
+ for i in range(0, len(diskpool)):
+ ret_pool = diskpool[i].InstanceID
+ if ret_pool == dp_id:
+ raise Exception("Failed to delete %s" % test_pool)
+ break
+ elif ret_pool != dp_id and i == len(diskpool) -1:
+ status = PASS
+ except Exception, details:
+ logger.error(details)
+ return status
+
+ return status
+if __name__ == "__main__":
+ sys.exit(main())
15 years, 8 months
[PATCH] [TEST] #2 Update RPCS/07_DeleteResourcePool.py validate that the Network pool can be deleted through the providers
by yunguol@cn.ibm.com
# HG changeset patch
# User Guolian Yun <yunguol(a)cn.ibm.com>
# Date 1240826363 25200
# Node ID bf6c03f3c0518a6db28f1fc0313b29ed36726a5c
# Parent e8dc06eefada41252ba8d27b08fcef8ef6604251
[TEST] #2 Update RPCS/07_DeleteResourcePool.py validate that the Network pool can be deleted through the providers
Updates from 1 to 2:
1) Merge CIM_NS and logger
2) Remove the netpool length check
3) Check the use of the ip address before using
Tested for KVM with current sources
Signed-off-by: Guolian Yun<yunguol(a)cn.ibm.com>
diff -r e8dc06eefada -r bf6c03f3c051 suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py
--- a/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py Tue Apr 21 17:08:06 2009 -0700
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/07_DeleteResourcePool.py Mon Apr 27 02:59:23 2009 -0700
@@ -33,10 +33,12 @@
# OUT -- Job -- CIM_ConcreteJob REF -- Returned job if started
# OUT -- Error-- String -- Encoded error instance if the operation
# failed and did not return a job.
-# REVISIT :
-# --------
-# As of now the DeleteResourcePool() simply throws an Exception.
-# We must improve this tc once the service is implemented.
+#
+# Exception details before Revision 841
+# -----
+# Error code: CIM_ERR_NOT_SUPPORTED
+#
+# After revision 841, the service is implemented
#
# -Date: 20.02.2008
@@ -44,34 +46,90 @@
import sys
import pywbem
from XenKvmLib import rpcs_service
-from CimTest.Globals import logger
+from CimTest.Globals import logger, CIM_NS
from CimTest.ReturnCodes import FAIL, PASS
-from XenKvmLib.const import do_main, platform_sup
+from XenKvmLib.const import do_main, platform_sup, get_provider_version
+from pywbem.cim_obj import CIMInstanceName, CIMInstance
+from XenKvmLib.enumclass import EnumInstances
+from XenKvmLib.xm_virt_util import net_list
from XenKvmLib.classes import get_typed_class
+from VirtLib.utils import run_remote
cim_errno = pywbem.CIM_ERR_NOT_SUPPORTED
cim_mname = "DeleteResourcePool"
+libvirt_cim_child_pool_rev = 841
+test_pool = "nat_pool"
@do_main(platform_sup)
def main():
+ status = FAIL
options = main.options
rpcs_conn = eval("rpcs_service." + get_typed_class(options.virt, \
"ResourcePoolConfigurationService"))(options.ip)
- try:
- rpcs_conn.DeleteResourcePool()
- except pywbem.CIMError, (err_no, desc):
- if err_no == cim_errno :
- logger.info("Got expected exception for '%s' service", cim_mname)
- logger.info("Errno is '%s' ", err_no)
- logger.info("Error string is '%s'", desc)
- return PASS
- else:
- logger.error("Unexpected rc code %s and description %s\n",
- err_no, desc)
- return FAIL
-
- logger.error("The execution should not have reached here!!")
- return FAIL
+ curr_cim_rev, changeset = get_provider_version(options.virt, options.ip)
+ if curr_cim_rev < libvirt_cim_child_pool_rev:
+ try:
+ rpcs_conn.DeleteResourcePool()
+ except pywbem.CIMError, (err_no, desc):
+ if err_no == cim_errno :
+ logger.info("Got expected exception for '%s' service", cim_mname)
+ logger.info("Errno is '%s' ", err_no)
+ logger.info("Error string is '%s'", desc)
+ return PASS
+ else:
+ logger.error("Unexpected rc code %s and description %s\n",
+ err_no, desc)
+ return FAIL
+ elif curr_cim_rev >= libvirt_cim_child_pool_rev:
+ nprasd = get_typed_class(options.virt,
+ 'NetPoolResourceAllocationSettingData')
+ np = get_typed_class(options.virt, 'NetworkPool')
+ np_id = 'NetworkPool/%s' % test_pool
+ iname = CIMInstanceName(nprasd,
+ namespace = CIM_NS,
+ keybindings = {'InstanceID':np_id})
+ addr = "192.168.0.20"
+ n_list = net_list(options.ip, options.virt)
+ for _net_name in n_list:
+ cmd = "virsh net-dumpxml %s | awk '/ip address/ {print}' | \
+ cut -d ' ' -f 4 | sed 's/address=//'" % _net_name
+ s, in_use_addr = run_remote(options.ip, cmd)
+ in_use_addr = in_use_addr.strip("'")
+ if in_use_addr == addr:
+ logger.error("IP address is in use by a different network")
+ return FAIL
+ np_prop = {
+ "Address" : addr,
+ "Netmask" : "255.255.255.0",
+ "IPRangeStart" : "192.168.0.21",
+ "IPRangeEnd" : "192.168.0.30"
+ }
+ nrasd = CIMInstance(nprasd, path = iname, properties = np_prop)
+ try:
+ rpcs_conn.CreateChildResourcePool(ElementName=test_pool,
+ Settings=[nrasd.tomof()])
+ netpool = EnumInstances(options.ip, np)
+ for i in range(0, len(netpool)):
+ ret_pool = netpool[i].InstanceID
+ if ret_pool == np_id:
+ break
+ elif ret_pool != np_id and i == len(netpool) - 1:
+ raise Exception("Can not find expected pool")
+
+ pool = CIMInstanceName(np, keybindings = {'InstanceID':np_id})
+ rpcs_conn.DeleteResourcePool(Pool = pool)
+ netpool = EnumInstances(options.ip, np)
+ for i in range(0, len(netpool)):
+ ret_pool = netpool[i].InstanceID
+ if ret_pool == np_id:
+ raise Exception("Failed to delete %s" % test_pool)
+ break
+ elif ret_pool != np_id and i == len(netpool) -1:
+ status = PASS
+ except Exception, details:
+ logger.error(details)
+ return status
+
+ return status
if __name__ == "__main__":
sys.exit(main())
-
15 years, 8 months
[PATCH] [TEST] #2 Add new tc to validate that the Disk child pool can be created through the providers
by yunguol@cn.ibm.com
# HG changeset patch
# User Guolian Yun <yunguol(a)cn.ibm.com>
# Date 1240825724 25200
# Node ID b1920cf4a6c61d3bfda1103bc454c277294745cb
# Parent e8dc06eefada41252ba8d27b08fcef8ef6604251
[TEST] #2 Add new tc to validate that the Disk child pool can be created through the providers
Updates from 1 to 2:
1)Combine CIM_NS and logger
2)Move verify_pool function into library
Tested for KVM with current sources
Signed-off-by: Guolian Yun<yunguol(a)cn.ibm.com>
diff -r e8dc06eefada -r b1920cf4a6c6 suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/08_CreateChildResourcePool_Disk.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/08_CreateChildResourcePool_Disk.py Mon Apr 27 02:48:44 2009 -0700
@@ -0,0 +1,125 @@
+#!/usr/bin/python
+#
+# Copyright 2009 IBM Corp.
+#
+# Authors:
+# Guolian Yun <yunguol(a)cn.ibm.com>
+#
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# This test case should test the CreateChildResourcePool service
+# supplied by the RPCS provider.
+# Input
+# -----
+# IN -- ElementName -- String -- The desired name of the resource pool
+# IN -- Settings -- String -- A string representation of a
+# CIM_ResourceAllocationSettingData
+# instance that represents the allocation
+# assigned to this child pool
+# IN -- ParentPool -- CIM_ResourcePool REF -- The parent pool from which
+# to create this pool
+#
+# Output
+# ------
+# OUT -- Pool -- CIM_ResourcePool REF -- The resulting resource pool
+# OUT -- Job -- CIM_ConcreteJob REF -- Returned job if started
+# OUT -- Error -- String -- Encoded error instance if the operation
+# failed and did not return a job
+#
+# Exception details before Revision 837
+# -----
+# Error code: CIM_ERR_NOT_SUPPORTED
+#
+# After revision 837, the service is implemented
+#
+# -Date: 23.04.2009
+
+import sys
+import pywbem
+from XenKvmLib import rpcs_service
+from CimTest.Globals import logger, CIM_NS
+from CimTest.ReturnCodes import FAIL, PASS
+from XenKvmLib.const import do_main, platform_sup, get_provider_version
+from XenKvmLib.classes import get_typed_class
+from pywbem.cim_obj import CIMInstanceName, CIMInstance
+from XenKvmLib.common_util import diskpool_destroy, diskpool_undefine, \
+ verify_pool
+from pywbem.cim_types import Uint16
+
+cim_errno = pywbem.CIM_ERR_NOT_SUPPORTED
+cim_mname = "CreateChildResourcePool"
+libvirt_cim_child_pool_rev = 837
+test_pool = ["dir_pool"]
+
+@do_main(platform_sup)
+def main():
+ options = main.options
+ rpcs_conn = eval("rpcs_service." + get_typed_class(options.virt, \
+ "ResourcePoolConfigurationService"))(options.ip)
+
+ curr_cim_rev, changeset = get_provider_version(options.virt, options.ip)
+ if curr_cim_rev < libvirt_cim_child_pool_rev:
+ try:
+ rpcs_conn.CreateChildResourcePool()
+ except pywbem.CIMError, (err_no, desc):
+ if err_no == cim_errno :
+ logger.info("Got expected exception for '%s'service", cim_mname)
+ logger.info("Errno is '%s' ", err_no)
+ logger.info("Error string is '%s'", desc)
+ return PASS
+ else:
+ logger.error("Unexpected rc code %s and description %s\n",
+ err_no, desc)
+ return FAIL
+ elif curr_cim_rev >= libvirt_cim_child_pool_rev:
+ dprasd = get_typed_class(options.virt,
+ 'DiskPoolResourceAllocationSettingData')
+ dp_prop = {"Path" : "/tmp"}
+
+ for i in range(0, len(test_pool)):
+ dp_id = 'DiskPool/%s' % test_pool[i]
+ iname = CIMInstanceName(dprasd,
+ namespace = CIM_NS,
+ keybindings = {'InstanceID':dp_id})
+ if test_pool[i] == "dir_pool":
+ dp_prop["Type"] = Uint16(1)
+
+ drasd = CIMInstance(dprasd, path = iname, properties = dp_prop)
+ try:
+ rpcs_conn.CreateChildResourcePool(ElementName=test_pool[i],
+ Settings=[drasd.tomof()])
+ dp = get_typed_class(options.virt, 'DiskPool')
+ status = verify_pool(options.ip, dp, dp_id)
+ if status != PASS:
+ raise Exception("Error in diskpool verification")
+ status = diskpool_destroy(test_pool[i], options.ip, options.virt)
+ if status != PASS:
+ raise Exception("Unable to destroy diskpool %s"
+ % test_pool[i])
+ status = diskpool_undefine(test_pool[i], options.ip, options.virt)
+ if status != PASS:
+ raise Exception("Unable to undefine diskpool %s"
+ % test_pool[i])
+ except Exception, details:
+ logger.error("Error in %s creation and verification"
+ " through provider", dp_id)
+ logger.error(details)
+ return FAIL
+
+ return status
+
+if __name__ == "__main__":
+ sys.exit(main())
diff -r e8dc06eefada -r b1920cf4a6c6 suites/libvirt-cim/lib/XenKvmLib/common_util.py
--- a/suites/libvirt-cim/lib/XenKvmLib/common_util.py Tue Apr 21 17:08:06 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/common_util.py Mon Apr 27 02:48:44 2009 -0700
@@ -403,6 +403,22 @@
return cs
+def diskpool_destroy(diskpool, server, virt="Xen"):
+ """Function destroys a given virtual diskpool"""
+
+ cmd = "virsh -c %s pool-destroy %s" % (virt2uri(virt), diskpool)
+ ret, out = utils.run_remote(server, cmd)
+
+ return ret
+
+def diskpool_undefine(diskpool, server, virt="Xen"):
+ """Function undefines a given virtual diskpool"""
+
+ cmd = "virsh -c %s pool-undefine %s" % (virt2uri(virt), diskpool)
+ ret, out = utils.run_remote(server, cmd)
+
+ return ret
+
def check_sblim(server, virt='Xen'):
status = FAIL
prev_namespace = Globals.CIM_NS
15 years, 8 months
[PATCH] [TEST] #4 Update RPCS/04 to validate that the Network child pool can be created through the providers
by yunguol@cn.ibm.com
# HG changeset patch
# User Guolian Yun <yunguol(a)cn.ibm.com>
# Date 1240820133 25200
# Node ID 02b3a5f43721b347c9bef681ed456fcf99e76e81
# Parent e8dc06eefada41252ba8d27b08fcef8ef6604251
[TEST] #4 Update RPCS/04 to validate that the Network child pool can be created through the providers
Updates from 3 to 4:
1) Move general net function to common.py
2) move the CIM_NS import stmt along with the logger
Updates from 2 to 3:
1) Use CIM_NS from const.py instead of hardcoding
2) Check if the IP is already used on the system before setting
3) Rewrite try, except... blocks
Updates from 1 to 2:
Test all types of networkpool including routed network, nat based network and isolated network
Tested for KVM with current sources
Signed-off-by: Guolian Yun<yunguol(a)cn.ibm.com>
diff -r e8dc06eefada -r 02b3a5f43721 suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/04_CreateChildResourcePool.py
--- a/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/04_CreateChildResourcePool.py Tue Apr 21 17:08:06 2009 -0700
+++ b/suites/libvirt-cim/cimtest/ResourcePoolConfigurationService/04_CreateChildResourcePool.py Mon Apr 27 01:15:33 2009 -0700
@@ -39,45 +39,104 @@
# OUT -- Error -- String -- Encoded error instance if the operation
# failed and did not return a job
#
-# REVISIT :
-# --------
-# As of now the CreateChildResourcePool() simply throws an Exception.
-# We must improve this tc once the service is implemented.
-#
-# -Date: 20.02.2008
-
+# Exception details before Revision 837
+# -----
+# Error code: CIM_ERR_NOT_SUPPORTED
+#
+# After revision 837, the service is implemented
+#
+# -Date: 20.02.2008
import sys
import pywbem
from XenKvmLib import rpcs_service
-from CimTest.Globals import logger
+from CimTest.Globals import logger, CIM_NS
from CimTest.ReturnCodes import FAIL, PASS
-from XenKvmLib.const import do_main, platform_sup
+from XenKvmLib.const import do_main, platform_sup, get_provider_version
from XenKvmLib.classes import get_typed_class
+from pywbem.cim_obj import CIMInstanceName, CIMInstance
+from XenKvmLib.common_util import destroy_netpool, undefine_netpool, \
+ verify_pool
+from XenKvmLib.xm_virt_util import net_list
+from VirtLib.utils import run_remote
cim_errno = pywbem.CIM_ERR_NOT_SUPPORTED
cim_mname = "CreateChildResourcePool"
+libvirt_cim_child_pool_rev = 837
+test_pool = ["routedpool", "natpool", "isolatedpool"]
@do_main(platform_sup)
def main():
options = main.options
rpcs_conn = eval("rpcs_service." + get_typed_class(options.virt, \
"ResourcePoolConfigurationService"))(options.ip)
- try:
- rpcs_conn.CreateChildResourcePool()
- except pywbem.CIMError, (err_no, desc):
- if err_no == cim_errno :
- logger.info("Got expected exception for '%s' service", cim_mname)
- logger.info("Errno is '%s' ", err_no)
- logger.info("Error string is '%s'", desc)
- return PASS
- else:
- logger.error("Unexpected rc code %s and description %s\n",
- err_no, desc)
- return FAIL
-
- logger.error("The execution should not have reached here!!")
- return FAIL
+
+ curr_cim_rev, changeset = get_provider_version(options.virt, options.ip)
+ if curr_cim_rev < libvirt_cim_child_pool_rev:
+ try:
+ rpcs_conn.CreateChildResourcePool()
+ except pywbem.CIMError, (err_no, desc):
+ if err_no == cim_errno :
+ logger.info("Got expected exception for '%s'service", cim_mname)
+ logger.info("Errno is '%s' ", err_no)
+ logger.info("Error string is '%s'", desc)
+ return PASS
+ else:
+ logger.error("Unexpected rc code %s and description %s\n",
+ err_no, desc)
+ return FAIL
+ elif curr_cim_rev >= libvirt_cim_child_pool_rev:
+ nprasd = get_typed_class(options.virt,
+ 'NetPoolResourceAllocationSettingData')
+ addr = "192.168.0.30"
+ n_list = net_list(options.ip, options.virt)
+ for _net_name in n_list:
+ cmd = "virsh net-dumpxml %s | awk '/ip address/ {print}' | \
+ cut -d ' ' -f 4 | sed 's/address=//'" % _net_name
+ s, in_use_addr = run_remote(options.ip, cmd)
+ in_use_addr = in_use_addr.strip("'")
+ if in_use_addr == addr:
+ logger.error("IP address is in use by a different network")
+ return FAIL
+ np_prop = {
+ "Address" : addr,
+ "Netmask" : "255.255.255.0",
+ "IPRangeStart" : "192.168.0.31",
+ "IPRangeEnd" : "192.168.0.57",
+ }
+ for i in range(0, len(test_pool)):
+ np_id = 'NetworkPool/%s' % test_pool[i]
+ iname = CIMInstanceName(nprasd,
+ namespace = CIM_NS,
+ keybindings = {'InstanceID':np_id})
+ if test_pool[i] == "routedpool":
+ np_prop["ForwardMode"] = "route eth1"
+ elif test_pool[i] == "natpool":
+ np_prop["ForwardMode"] = "nat"
+
+ nrasd = CIMInstance(nprasd, path = iname, properties = np_prop)
+ try:
+ rpcs_conn.CreateChildResourcePool(ElementName=test_pool[i],
+ Settings=[nrasd.tomof()])
+ np = get_typed_class(options.virt, 'NetworkPool')
+ status = verify_pool(options.ip, np, np_id)
+ if status != PASS:
+ raise Exception("Error in networkpool verification")
+ status = destroy_netpool(options.ip, options.virt, test_pool[i])
+ if status != PASS:
+ raise Exception("Unable to destroy networkpool %s"
+ % test_pool[i])
+ status = undefine_netpool(options.ip, options.virt, test_pool[i])
+ if status != PASS:
+ raise Exception("Unable to undefine networkpool %s"
+ % test_pool[i])
+ except Exception, details:
+ logger.error("Error in networkpool %s creation and verification"
+ " through provider", np_id)
+ logger.error(details)
+ return FAIL
+
+ return status
+
if __name__ == "__main__":
sys.exit(main())
-
diff -r e8dc06eefada -r 02b3a5f43721 suites/libvirt-cim/lib/XenKvmLib/common_util.py
--- a/suites/libvirt-cim/lib/XenKvmLib/common_util.py Tue Apr 21 17:08:06 2009 -0700
+++ b/suites/libvirt-cim/lib/XenKvmLib/common_util.py Mon Apr 27 01:15:33 2009 -0700
@@ -26,7 +26,8 @@
from time import sleep
from distutils.file_util import move_file
from XenKvmLib.test_xml import *
-from XenKvmLib.test_doms import *
+from XenKvmLib.test_doms import *
+from XenKvmLib.enumclass import EnumInstances
from XenKvmLib import vsms
from CimTest import Globals
from XenKvmLib import enumclass
@@ -385,7 +386,29 @@
logger.error("Failed to destroy Virtual Network '%s'", net_name)
return FAIL
- return PASS
+ return PASS
+
+def net_undefine(network, server, virt="Xen"):
+ """Function undefine a given virtual network"""
+
+ cmd = "virsh -c %s net-undefine %s" % (virt2uri(virt), network)
+ print cmd
+ ret, out = utils.run_remote(server, cmd)
+
+ return ret
+
+
+def undefine_netpool(server, virt, net_name):
+ if net_name == None:
+ return FAIL
+
+ ret = net_undefine(net_name, server, virt)
+ if ret != 0:
+ logger.error("Failed to undefine Virtual Network '%s'", net_name)
+ return FAIL
+
+ return PASS
+
def libvirt_cached_data_poll(ip, virt, dom_name):
cs = None
@@ -435,3 +458,20 @@
return guest_name, devid, PASS
+def verify_pool(server, networkpool, poolname):
+ status = FAIL
+ pool_list = EnumInstances(server, networkpool)
+ if len(pool_list) < 1:
+ logger.error("Return %i instances, expected at least one instance",
+ len(pool_list))
+ return FAIL
+
+ for i in range(0, len(pool_list)):
+ ret_pool = pool_list[i].InstanceID
+ if ret_pool == poolname:
+ status = PASS
+ break
+ elif ret_pool != poolname and i == len(pool_list)-1:
+ logger.error("Can not find expected pool")
+
+ return status
15 years, 8 months