Xen_ComputerSystem RequestStateChange
by Kenny Woodson
When testing the Xen_ComputerSystem RequestStateChange, I noticed that
the shutdown state wasn't working but the disabled state was. Was there
a difference for these(disabled (3) and shutdown (4))? Is there a
reason why the shutdown isn't working but disabled is?
Thanks,
kwoodson
16 years, 5 months
Apparent RPM spec file conflict
by Tyler Berry
The RPM spec file libvirt-cim.spec from the most recent snapshot
includes these two build constraints:
BuildRequires: libcmpiutil-devel
BuildConflicts: sblim-cmpi-devel
The RPM spec file libcmpiutil.spec from the most recent snapshot
includes this constraint:
BuildRequires: sblim-cmpi-devel
With RPM 4.4.2 on RH5.2, this results in it being impossible to
generate a libvirt-cim RPM; the build dependency libcmpiutil has
on sblim-cmpi-devel is being retained as a runtime dependency.
This may be a result of a mistake or mistaken assumption on my
part, but it may also be an error in one or both spec files.
Below is a lightly edited log of the results of trying to build a
libvirt-cim RPM from the current snapshots.
-
[tyler@tyler-rhel32-vm libvirt-cim-0.5]$ sudo rpmbuild -ba libvirt-cim.spec
Password:
error: Failed build dependencies:
libcmpiutil-devel is needed by libvirt-cim-0.5-1.i386
[tyler@tyler-rhel32-vm libcmpiutil-0.1]$ sudo rpmbuild -ba libcmpiutil.spec
error: Failed build dependencies:
sblim-cmpi-devel is needed by libcmpiutil-0.1-1.i386
[tyler@tyler-rhel32-vm Server]$ sudo rpm -ivh sblim-cmpi-devel-1.0.4-31.el5.i386.rpm
warning: sblim-cmpi-devel-1.0.4-31.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:sblim-cmpi-devel ########################################### [100%]
[tyler@tyler-rhel32-vm libcmpiutil-0.1]$ sudo rpmbuild -ba libcmpiutil.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.17372
...
...
[tyler@tyler-rhel32-vm libcmpiutil-0.1]$ sudo rpm -ivh /usr/src/redhat/RPMS/i386/libcmpiutil-0.1-1.i386.rpm
Preparing... ########################################### [100%]
1:libcmpiutil ########################################### [100%]
[tyler@tyler-rhel32-vm libcmpiutil-0.1]$ sudo rpm -ivh /usr/src/redhat/RPMS/i386/libcmpiutil-devel-0.1-1.i386.rpm
Preparing... ########################################### [100%]
1:libcmpiutil-devel ########################################### [100%]
[tyler@tyler-rhel32-vm libvirt-cim-0.5]$ sudo rpmbuild -ba libvirt-cim.spec
error: Failed build dependencies:
sblim-cmpi-devel conflicts with libvirt-cim-0.5-1.i386
[tyler@tyler-rhel32-vm libvirt-cim-0.5]$ sudo rpm -e sblim-cmpi-devel
error: Failed dependencies:
sblim-cmpi-devel is needed by (installed) libcmpiutil-devel-0.1-1.i386
--
Tyler Berry
ESS Software, Hewlett-Packard OSLO
16 years, 5 months
[TEST] Cimtest Report for LXC with SFCB on F9 (2008/07/03)
by Guo Lian Yun
stro: Fedora 9 Beta
kernel-2.6.25-0.121.rc5.git4.fc9.i686
kernel-2.6.25-0.218.rc8.git7.fc9.x86_64
CIMOM: sblim-sfcb-1.3.0-0.i386
libcmpiutil: 81
libvirt-cim: 629
cimtest: changeset-240
==================================================================
PASS : 84
FAIL : 6
XFAIL : 1
SKIP : 39
-----------------
Total : 130
========================= FAILED
==========================================
ComputerSystem - 05_activate_defined_start.py: FAIL
ComputerSystem - 27_define_suspend_errs.py: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(6322) exiting due to a SIGSEGV signal
HostSystem - 03_hs_to_settdefcap.py: FAIL
Memory - 02_defgetmem.py: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(8447) exiting due to a SIGSEGV signal
VirtualSystemManagementService - 01_definesystem_name.py: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(23930) exiting due to a SIGSEGV signal
VirtualSystemManagementService - 05_destroysystem_neg.py: FAIL
InvokeMethod(DestroySystem): Unable to retrieve domain name.
InvokeMethod(DestroySystem): Failed to find domain
======================CIMTEST 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: FAIL
ComputerSystem - 06_paused_active_suspend.py: SKIP
ComputerSystem - 22_define_suspend.py: PASS
ComputerSystem - 23_suspend_suspend.py: SKIP
ComputerSystem - 27_define_suspend_errs.py: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(6322) exiting due to a SIGSEGV signal
ComputerSystem - 32_start_reboot.py: SKIP
ComputerSystem - 33_suspend_reboot.py: SKIP
ComputerSystem - 35_start_reset.py: SKIP
ComputerSystem - 40_RSC_start.py: SKIP
ComputerSystem - 41_cs_to_settingdefinestate.py: SKIP
ComputerSystem - 42_cs_gi_errs.py: PASS
ComputerSystemIndication - 01_created_indication.py: SKIP
ElementAllocatedFromPool - 01_forward.py: SKIP
ElementAllocatedFromPool - 02_reverse.py: SKIP
ElementAllocatedFromPool - 03_reverse_errs.py: SKIP
ElementAllocatedFromPool - 04_forward_errs.py: SKIP
ElementCapabilities - 01_forward.py: PASS
ElementCapabilities - 02_reverse.py: PASS
ElementCapabilities - 03_forward_errs.py: PASS
ElementCapabilities - 04_reverse_errs.py: PASS
ElementCapabilities - 05_hostsystem_cap.py: PASS
ElementConforms - 01_forward.py: PASS
ElementConforms - 02_reverse.py: PASS
ElementConforms - 03_ectp_fwd_errs.py: PASS
ElementConforms - 04_ectp_rev_errs.py: PASS
ElementSettingData - 01_forward.py: PASS
ElementSettingData - 03_esd_assoc_with_rasd_errs.py: PASS
EnabledLogicalElementCapabilities - 01_enum.py: PASS
EnabledLogicalElementCapabilities - 02_elecap_gi_errs.py: PASS
HostSystem - 01_enum.py: PASS
HostSystem - 02_hostsystem_to_rasd.py: PASS
HostSystem - 03_hs_to_settdefcap.py: FAIL
HostSystem - 04_hs_to_EAPF.py: SKIP
HostSystem - 05_hs_gi_errs.py: PASS
HostSystem - 06_hs_to_vsms.py: PASS
HostedDependency - 01_forward.py: PASS
HostedDependency - 02_reverse.py: PASS
HostedDependency - 03_enabledstate.py: SKIP
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
LogicalDisk - 01_disk.py: SKIP
LogicalDisk - 02_nodevs.py: SKIP
LogicalDisk - 03_ld_gi_errs.py: SKIP
Memory - 01_memory.py: PASS
Memory - 02_defgetmem.py: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(8447) exiting due to a SIGSEGV signal
Memory - 03_mem_gi_errs.py: PASS
NetworkPort - 01_netport.py: SKIP
NetworkPort - 02_np_gi_errors.py: SKIP
NetworkPort - 03_user_netport.py: SKIP
Processor - 01_processor.py: SKIP
Processor - 02_definesys_get_procs.py: SKIP
Processor - 03_proc_gi_errs.py: SKIP
Profile - 01_enum.py: PASS
Profile - 02_profile_to_elec.py: SKIP
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
ReferencedProfile - 01_verify_refprof.py: PASS
ReferencedProfile - 02_refprofile_errs.py: PASS
ResourceAllocationFromPool - 01_forward.py: PASS
ResourceAllocationFromPool - 02_reverse.py: PASS
ResourceAllocationFromPool - 03_forward_errs.py: PASS
ResourceAllocationFromPool - 04_reverse_errs.py: PASS
ResourceAllocationFromPool - 05_RAPF_err.py: SKIP
ResourcePool - 01_enum.py: PASS
ResourcePool - 02_rp_gi_errors.py: PASS
ResourcePoolConfigurationCapabilities - 01_enum.py: PASS
ResourcePoolConfigurationCapabilities - 02_rpcc_gi_errs.py: PASS
ResourcePoolConfigurationService - 01_enum.py: PASS
ResourcePoolConfigurationService - 02_rcps_gi_errors.py: PASS
ResourcePoolConfigurationService - 03_CreateResourcePool.py: SKIP
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: SKIP
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: SKIP
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py:
SKIP
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: SKIP
SettingsDefine - 01_forward.py: PASS
SettingsDefine - 02_reverse.py: PASS
SettingsDefine - 03_sds_fwd_errs.py: PASS
SettingsDefine - 04_sds_rev_errs.py: PASS
SettingsDefineCapabilities - 01_forward.py: PASS
SettingsDefineCapabilities - 03_forward_errs.py: XFAIL Bug: Test error:
returned XFAIL without a valid bug string.
Bug:<>
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: FAIL
InvokeMethod(DefineSystem): *** Provider
Virt_VirtualSystemManagementService(23930) exiting due to a SIGSEGV signal
VirtualSystemManagementService - 02_destroysystem.py: PASS
VirtualSystemManagementService - 03_definesystem_ess.py: PASS
VirtualSystemManagementService - 04_definesystem_ers.py: PASS
VirtualSystemManagementService - 05_destroysystem_neg.py: FAIL
InvokeMethod(DestroySystem): Unable to retrieve domain name.
InvokeMethod(DestroySystem): Failed to find domain
VirtualSystemManagementService - 06_addresource.py: SKIP
VirtualSystemManagementService - 07_addresource_neg.py: PASS
VirtualSystemManagementService - 08_modifyresource.py: SKIP
VirtualSystemManagementService - 09_procrasd_persist.py: SKIP
VirtualSystemMigrationCapabilities - 01_enum.py: PASS
VirtualSystemMigrationCapabilities - 02_vsmc_gi_errs.py: PASS
VirtualSystemMigrationService - 01_migratable_host.py: SKIP
VirtualSystemMigrationService - 02_host_migrate_type.py: SKIP
VirtualSystemMigrationService - 05_migratable_host_errs.py: SKIP
VirtualSystemMigrationSettingData - 01_enum.py: PASS
VirtualSystemMigrationSettingData - 02_vsmsd_gi_errs.py: PASS
VirtualSystemSettingDataComponent - 01_forward.py: SKIP
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
Best,
Regards
Daisy (运国莲)
VSM Team, China Systems & Technology Labs (CSTL)
E-mail: yunguol(a)cn.ibm.com
TEL: (86)-21-60922144
Building 10, 399 Ke Yuan Rd, Pudong Shanghai, 201203
16 years, 5 months
CimTest Report on XenFV 03-07-2008
by Deepti B Kalakeri
======================================
CIM Test Report for XenFV
======================================
Distro : RHEL 5.2 Beta
Kernel : 2.6.18-88.el5xen
Xen version : 3.1.2-88.el5
Libvirt : libvirt-0.3.3-7.el5
CIMOM : pegasus
PyWBEM : pywbem-3.14
CIM Schema : cimv216Experimental
LibCMPIutil : 79
LibVirtCIM : 629
CIMTEST : 240
======================================
PASS : 91
TOTAL FAILED : 11 [9 test cases passed when ran manually]
ACTUAL FAILED : 2
XFAIL : 6
SKIP : 22
-------------------
Total : 130
======================================
List of tc that are failing:
ComputerSystem - 06_paused_active_suspend.py: FAIL
VirtualSystemManagementService - 02_destroysystem.py: FAIL
The following tc passed when run manually:
ElementConforms - 01_forward.py: FAIL
ElementConforms - 02_reverse.py: FAIL
EnabledLogicalElementCapabilities - 01_enum.py: FAIL
HostSystem - 02_hostsystem_to_rasd.py: FAIL
LogicalDisk - 03_ld_gi_errs.py: FAIL
Memory - 01_memory.py: FAIL
NetworkPort - 01_netport.py: FAIL
VSSD - 04_vssd_to_rasd.py: FAIL
VirtualSystemManagementService - 09_procrasd_persist.py: FAIL
Please find the complete report attached with the mail.
Thanks and Regards,
Deepti.
Starting test suite: libvirt-cim
Cleaned log files.
Testing XenFV hypervisor
AllocationCapabilities - 01_enum.py: PASS
AllocationCapabilities - 02_alloccap_gi_errs.py: PASS
ComputerSystem - 01_enum.py: PASS
ComputerSystem - 02_nosystems.py: PASS
ComputerSystem - 03_defineVS.py: PASS
ComputerSystem - 04_defineStartVS.py: PASS
ComputerSystem - 05_activate_defined_start.py: XFAIL Bug: 00002
ERROR - ERROR: VS DomST1 transition from Defined State to Activate state was not Successful
Bug:<00002>
ComputerSystem - 06_paused_active_suspend.py: FAIL
ERROR - Exception: (1, u'CIM_ERR_FAILED: Domain not running')
ERROR - Unable to suspend dom DomST1 using RequestedStateChange()
InvokeMethod(RequestStateChange): CIM_ERR_FAILED: Domain not running
ComputerSystem - 22_define_suspend.py: PASS
ComputerSystem - 23_suspend_suspend.py: XFAIL Bug: 00002
ERROR - RequestedState should be 2 not 12
ERROR - Attributes for dom test_domain not set as expected.
Bug:<00002>
ComputerSystem - 27_define_suspend_errs.py: PASS
ComputerSystem - 32_start_reboot.py: XFAIL Bug: 00002
ERROR - RequestedState should be 2 not 12
ERROR - Attributes for dom test_domain not set as expected.
Bug:<00002>
ComputerSystem - 33_suspend_reboot.py: XFAIL Bug: 00002
ERROR - RequestedState should be 2 not 12
ERROR - Attributes for dom test_domain not set as expected.
Bug:<00002>
ComputerSystem - 35_start_reset.py: XFAIL Bug: 00002
ERROR - RequestedState should be 2 not 12
ERROR - Attributes for dom test_domain not set as expected.
Bug:<00002>
ComputerSystem - 40_RSC_start.py: XFAIL Bug: 00002
ERROR - RequestedState should be 2 not 12
ERROR - Exception: Attributes were not set as expected for domain: 'test_domain'
Bug:<00002>
ComputerSystem - 41_cs_to_settingdefinestate.py: SKIP
ComputerSystem - 42_cs_gi_errs.py: PASS
ComputerSystemIndication - 01_created_indication.py: PASS
ElementAllocatedFromPool - 01_forward.py: SKIP
ElementAllocatedFromPool - 02_reverse.py: SKIP
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: FAIL
ERROR - Failed to get associators information for ElementConformsToProfile
ERROR - Exception: not enough arguments for format string
ElementConforms - 02_reverse.py: FAIL
ERROR - ERROR: Instance for domgst not created
ElementConforms - 03_ectp_fwd_errs.py: PASS
ElementConforms - 04_ectp_rev_errs.py: PASS
ElementSettingData - 01_forward.py: SKIP
ElementSettingData - 03_esd_assoc_with_rasd_errs.py: SKIP
EnabledLogicalElementCapabilities - 01_enum.py: FAIL
ERROR - Get domain list error, the number of domains is not equal
EnabledLogicalElementCapabilities - 02_elecap_gi_errs.py: PASS
HostSystem - 01_enum.py: PASS
HostSystem - 02_hostsystem_to_rasd.py: FAIL
ERROR - Xen_HostSystem with CrossClass_GuestDom was not returned
HostSystem - 03_hs_to_settdefcap.py: PASS
HostSystem - 04_hs_to_EAPF.py: SKIP
HostSystem - 05_hs_gi_errs.py: PASS
HostSystem - 06_hs_to_vsms.py: PASS
HostedDependency - 01_forward.py: SKIP
HostedDependency - 02_reverse.py: SKIP
HostedDependency - 03_enabledstate.py: SKIP
HostedDependency - 04_reverse_errs.py: SKIP
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
LogicalDisk - 01_disk.py: PASS
LogicalDisk - 02_nodevs.py: PASS
LogicalDisk - 03_ld_gi_errs.py: FAIL
ERROR - Failed to get instance by the class of Xen_LogicalDisk
ERROR - Exception: (6, u'CIM_ERR_NOT_FOUND: No such instance (hd_domain/hda)')
Memory - 01_memory.py: FAIL
ERROR - Capacity should be 262144 MB instead of 131072 MB
Memory - 02_defgetmem.py: PASS
Memory - 03_mem_gi_errs.py: PASS
NetworkPort - 01_netport.py: FAIL
ERROR - Exception: (6, u'CIM_ERR_NOT_FOUND: No such instance (test_domain/00:11:22:33:44:55)')
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: SKIP
Profile - 02_profile_to_elec.py: SKIP
Profile - 03_rprofile_gi_errs.py: SKIP
RASD - 01_verify_rasd_fields.py: PASS
RASD - 02_enum.py: PASS
RASD - 03_rasd_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: SKIP
ResourcePool - 02_rp_gi_errors.py: SKIP
ResourcePoolConfigurationCapabilities - 01_enum.py: PASS
ResourcePoolConfigurationCapabilities - 02_rpcc_gi_errs.py: PASS
ResourcePoolConfigurationService - 01_enum.py: PASS
ResourcePoolConfigurationService - 02_rcps_gi_errors.py: PASS
ResourcePoolConfigurationService - 03_CreateResourcePool.py: PASS
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: PASS
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: PASS
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: PASS
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: PASS
SettingsDefine - 01_forward.py: PASS
SettingsDefine - 02_reverse.py: PASS
SettingsDefine - 03_sds_fwd_errs.py: PASS
SettingsDefine - 04_sds_rev_errs.py: PASS
SettingsDefineCapabilities - 01_forward.py: PASS
SettingsDefineCapabilities - 03_forward_errs.py: PASS
SettingsDefineCapabilities - 04_forward_vsmsdata.py: PASS
SettingsDefineCapabilities - 05_reverse_vsmcap.py: PASS
SystemDevice - 01_forward.py: PASS
SystemDevice - 02_reverse.py: PASS
SystemDevice - 03_fwderrs.py: PASS
VSSD - 01_enum.py: PASS
VSSD - 02_bootldr.py: SKIP
VSSD - 03_vssd_gi_errs.py: PASS
VSSD - 04_vssd_to_rasd.py: FAIL
ERROR - Xen_VirtualSystemSettingData with VSSDC_dom was not returned
ERROR - Xen_VirtualSystemSettingData returned 0 VSSD objects, expected only 1
VirtualSystemManagementCapabilities - 01_enum.py: PASS
VirtualSystemManagementCapabilities - 02_vsmcap_gi_errs.py: PASS
VirtualSystemManagementService - 01_definesystem_name.py: PASS
VirtualSystemManagementService - 02_destroysystem.py: FAIL
ERROR - Unknow exception happened
ERROR - (1, u'CIM_ERR_FAILED: Unable to retrieve domain name.')
InvokeMethod(DestroySystem): CIM_ERR_FAILED: Unable to retrieve domain name.
VirtualSystemManagementService - 03_definesystem_ess.py: PASS
VirtualSystemManagementService - 04_definesystem_ers.py: PASS
VirtualSystemManagementService - 05_destroysystem_neg.py: PASS
VirtualSystemManagementService - 06_addresource.py: SKIP
VirtualSystemManagementService - 07_addresource_neg.py: PASS
VirtualSystemManagementService - 08_modifyresource.py: PASS
VirtualSystemManagementService - 09_procrasd_persist.py: FAIL
ERROR - limit is 0, expected 256
ERROR - rstest_domain CPU scheduling not set properly
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
VirtualSystemMigrationSettingData - 01_enum.py: PASS
VirtualSystemMigrationSettingData - 02_vsmsd_gi_errs.py: PASS
VirtualSystemSettingDataComponent - 01_forward.py: SKIP
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
16 years, 5 months
[PATCH] {#2) Add state transition poll to DestroySystem() call
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1215027772 25200
# Node ID 4d99e7ac6e39a1f077b5476fdb3ad01e32c5fe13
# Parent 35d00def6476eb4e21b3a26837682362917f9915
{#2) Add state transition poll to DestroySystem() call.
Updates from 1 to 2:
-Remove polling loop
-Move indications trigger to where the status is set (no need to duplicate the call).
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r 35d00def6476 -r 4d99e7ac6e39 src/Virt_VirtualSystemManagementService.c
--- a/src/Virt_VirtualSystemManagementService.c Wed Jul 02 08:57:04 2008 -0700
+++ b/src/Virt_VirtualSystemManagementService.c Wed Jul 02 12:42:52 2008 -0700
@@ -858,11 +858,17 @@
infostore_delete(virConnectGetType(conn), dom_name);
virDomainDestroy(dom); /* Okay for this to fail */
+
+ dom = virDomainLookupByName(conn, dom_name);
+ if (dom == NULL) {
+ CU_DEBUG("Domain successfully destroyed");
+ rc = IM_RC_OK;
+ goto error;
+ }
+
if (virDomainUndefine(dom) == 0) {
+ CU_DEBUG("Domain successfully destroyed and undefined");
rc = IM_RC_OK;
- trigger_indication(context,
- "ComputerSystemDeletedIndication",
- reference);
}
error:
@@ -874,8 +880,12 @@
cu_statusf(_BROKER, &status,
CMPI_RC_ERR_FAILED,
"Unable to retrieve domain name.");
- else if (rc == IM_RC_OK)
+ else if (rc == IM_RC_OK) {
status = (CMPIStatus){CMPI_RC_OK, NULL};
+ trigger_indication(context,
+ "ComputerSystemDeletedIndication",
+ reference);
+ }
virDomainFree(dom);
virConnectClose(conn);
16 years, 5 months
[PATCH] Add state transition poll to DestroySystem() call
by Kaitlin Rupert
# HG changeset patch
# User Kaitlin Rupert <karupert(a)us.ibm.com>
# Date 1214850941 25200
# Node ID 98e6e7b6160be701c4124cb04eef9c893fdfaa1d
# Parent b123b6b1fb08c3ab956f1c33801e743e082192b9
Add state transition poll to DestroySystem() call.
Signed-off-by: Kaitlin Rupert <karupert(a)us.ibm.com>
diff -r b123b6b1fb08 -r 98e6e7b6160b src/Virt_VirtualSystemManagementService.c
--- a/src/Virt_VirtualSystemManagementService.c Fri Jun 27 08:59:09 2008 -0700
+++ b/src/Virt_VirtualSystemManagementService.c Mon Jun 30 11:35:41 2008 -0700
@@ -56,6 +56,7 @@
#define DEFAULT_MAC_PREFIX "00:16:3e"
#define DEFAULT_XEN_WEIGHT 1024
+#define STATE_TRANSITION_TIMEOUT 120
const static CMPIBroker *_BROKER;
@@ -832,6 +833,8 @@
CMPIObjectPath *sys;
virConnectPtr conn = NULL;
virDomainPtr dom = NULL;
+ virDomainInfo info;
+ int i;
conn = connect_by_classname(_BROKER,
CLASSNAME(reference),
@@ -858,6 +861,34 @@
infostore_delete(virConnectGetType(conn), dom_name);
virDomainDestroy(dom); /* Okay for this to fail */
+
+ for (i = 0; i < STATE_TRANSITION_TIMEOUT; i++) {
+ if ((i % 30) == 0) {
+ CU_DEBUG("Polling for destroy completion...");
+ }
+
+ dom = virDomainLookupByName(conn, dom_name);
+ if (dom == NULL) {
+ CU_DEBUG("Domain successfully destroyed");
+ rc = IM_RC_OK;
+ trigger_indication(context,
+ "ComputerSystemDeletedIndication",
+ NAMESPACE(reference));
+ goto error;
+ }
+
+ if (virDomainGetInfo(dom, &info) != 0) {
+ CU_DEBUG("Unable to get domain current state");
+ rc = IM_RC_SYS_NOT_FOUND;
+ goto error;
+ }
+
+ if (info.state == VIR_DOMAIN_SHUTOFF)
+ break;
+
+ sleep(1);
+ }
+
if (virDomainUndefine(dom) == 0) {
rc = IM_RC_OK;
trigger_indication(context,
16 years, 5 months
[PATCH] (#2) Set SourceInstance{Host, ModelPath} in migration indications
by Dan Smith
# HG changeset patch
# User Dan Smith <danms(a)us.ibm.com>
# Date 1215014224 25200
# Node ID 35d00def6476eb4e21b3a26837682362917f9915
# Parent cb343a986592c25c487c53042ad889fa24ea9d97
(#2) Set SourceInstance{Host,ModelPath} in migration indications
This is a total hack at the moment, because we don't persist any
platform details in the job (since only Xen is supported at the moment).
When we do, this can be cleaned up. However, it works for now and would
be good to get in place.
Changes:
- Add SourceInstanceModelPath as well
Signed-off-by: Dan Smith <danms(a)us.ibm.com>
diff -r cb343a986592 -r 35d00def6476 src/Virt_VSMigrationService.c
--- a/src/Virt_VSMigrationService.c Tue Jul 01 12:47:31 2008 -0700
+++ b/src/Virt_VSMigrationService.c Wed Jul 02 08:57:04 2008 -0700
@@ -712,12 +712,47 @@
{
char *type;
CMPIStatus s;
+ CMPIObjectPath *ref;
const char *ind_name = NULL;
+ const char *host = NULL;
+ const char *ccname = NULL;
if (ind == NULL)
return false;
ind_name = ind_type_to_name(ind_type);
+
+ /* FIXME: This is a hack until we un-Xenify this provider */
+ ref = CMNewObjectPath(_BROKER, ns, "Xen_Foo", &s);
+ if ((ref == NULL) || (s.rc != CMPI_RC_OK)) {
+ CU_DEBUG("Failed to get job reference");
+ } else {
+ s = get_host_system_properties(&host, &ccname, ref, _BROKER);
+ if (s.rc == CMPI_RC_OK) {
+ CMSetProperty(ind, "SourceInstanceHost",
+ (CMPIValue *)host, CMPI_chars);
+ } else {
+ CU_DEBUG("Unable to get HostSystem properties");
+ }
+ }
+
+ /* FIXME: This should be merged with above once the job path is
+ * properly typed
+ */
+ ref = CMGetObjectPath(inst, &s);
+ if ((ref == NULL) || (s.rc != CMPI_RC_OK)) {
+ CU_DEBUG("Failed to get job reference");
+ } else {
+ CMPIString *str;
+
+ str = CMObjectPathToString(ref, &s);
+ if ((str == NULL) || (s.rc != CMPI_RC_OK)) {
+ CU_DEBUG("Failed to get path string");
+ } else {
+ CMSetProperty(ind, "SourceInstanceModelPath",
+ (CMPIValue *)&str, CMPI_string);
+ }
+ }
CU_DEBUG("Setting SourceInstance");
CMSetProperty(ind, "SourceInstance",
16 years, 5 months
[PATCH] Add SourceInstance{Host,ModelPath} to CSI
by Dan Smith
# HG changeset patch
# User Dan Smith <danms(a)us.ibm.com>
# Date 1215014236 25200
# Node ID 5f084775a1757e92dc02eb950a30565c6dbb75a4
# Parent 35d00def6476eb4e21b3a26837682362917f9915
Add SourceInstance{Host,ModelPath} to CSI
Signed-off-by: Dan Smith <danms(a)us.ibm.com>
diff -r 35d00def6476 -r 5f084775a175 src/Makefile.am
--- a/src/Makefile.am Wed Jul 02 08:57:04 2008 -0700
+++ b/src/Makefile.am Wed Jul 02 08:57:16 2008 -0700
@@ -69,9 +69,9 @@
libVirt_ComputerSystem_la_SOURCES = Virt_ComputerSystem.c
libVirt_Device_la_SOURCES = Virt_Device.c
-libVirt_ComputerSystemIndication_la_DEPENDENCIES = libVirt_ComputerSystem.la
+libVirt_ComputerSystemIndication_la_DEPENDENCIES = libVirt_ComputerSystem.la libVirt_HostSystem.la
libVirt_ComputerSystemIndication_la_SOURCES = Virt_ComputerSystemIndication.c
-libVirt_ComputerSystemIndication_la_LIBADD = -lVirt_ComputerSystem -lpthread -lrt
+libVirt_ComputerSystemIndication_la_LIBADD = -lVirt_ComputerSystem -lVirt_HostSystem -lpthread -lrt
libVirt_ComputerSystemMigrationIndication_la_DEPENDENCIES = libVirt_ComputerSystem.la
libVirt_ComputerSystemMigrationIndication_la_SOURCES = Virt_ComputerSystemMigrationIndication.c
diff -r 35d00def6476 -r 5f084775a175 src/Virt_ComputerSystemIndication.c
--- a/src/Virt_ComputerSystemIndication.c Wed Jul 02 08:57:04 2008 -0700
+++ b/src/Virt_ComputerSystemIndication.c Wed Jul 02 08:57:16 2008 -0700
@@ -42,6 +42,7 @@
#include "Virt_ComputerSystem.h"
#include "Virt_ComputerSystemIndication.h"
+#include "Virt_HostSystem.h"
static const CMPIBroker *_BROKER;
@@ -184,6 +185,33 @@
return ret;
}
+static void set_source_inst_props(const CMPIBroker *broker,
+ CMPIObjectPath *ref,
+ CMPIInstance *ind)
+{
+ const char *host;
+ const char *hostccn;
+ CMPIStatus s;
+ CMPIString *str;
+
+ str = CMObjectPathToString(ref, &s);
+ if ((str == NULL) || (s.rc != CMPI_RC_OK)) {
+ CU_DEBUG("Unable to get path string");
+ } else {
+ CMSetProperty(ind, "SourceInstanceModelPath",
+ (CMPIValue *)&str, CMPI_string);
+ }
+
+ s = get_host_system_properties(&host, &hostccn, ref, broker);
+ if (s.rc != CMPI_RC_OK) {
+ CU_DEBUG("Unable to get host properties (%s): %s",
+ CLASSNAME(ref), CMGetCharPtr(s.msg));
+ } else {
+ CMSetProperty(ind, "SourceInstanceHost",
+ (CMPIValue *)host, CMPI_chars);
+ }
+}
+
static bool _do_indication(const CMPIBroker *broker,
const CMPIContext *ctx,
CMPIInstance *affected_inst,
@@ -217,17 +245,21 @@
if (s.rc != CMPI_RC_OK) {
CU_DEBUG("Failed to get ind_op. Error: '%s'", s.msg);
ret = false;
+ goto out;
}
+ CMSetNameSpace(ind_op, args->ns);
+
+ affected_op = CMGetObjectPath(affected_inst, &s);
+ if (s.rc != CMPI_RC_OK) {
+ ret = false;
+ CU_DEBUG("problem getting affected_op: '%s'", s.msg);
+ goto out;
+ }
+ CMSetNameSpace(affected_op, args->ns);
switch (ind_type) {
case CS_CREATED:
case CS_DELETED:
- affected_op = CMGetObjectPath(affected_inst, &s);
- if (s.rc != CMPI_RC_OK) {
- ret = false;
- CU_DEBUG("problem getting affected_op: '%s'", s.msg);
- goto out;
- }
CMSetProperty(ind, "AffectedSystem",
(CMPIValue *)&affected_op, CMPI_ref);
break;
@@ -236,6 +268,8 @@
(CMPIValue *)&affected_inst, CMPI_instance);
break;
}
+
+ set_source_inst_props(broker, affected_op, ind);
CU_DEBUG("Delivering Indication: %s",
CMGetCharPtr(CMObjectPathToString(ind_op, NULL)));
16 years, 5 months
[PATCH] Set the SourceInstanceHost property in migration indications
by Dan Smith
# HG changeset patch
# User Dan Smith <danms(a)us.ibm.com>
# Date 1214947245 25200
# Node ID 4565972096b56353938ea30813b6c780e8488e65
# Parent cb343a986592c25c487c53042ad889fa24ea9d97
Set the SourceInstanceHost property in migration indications
This is a total hack at the moment, because we don't persist any
platform details in the job (since only Xen is supported at the moment).
When we do, this can be cleaned up. However, it works for now and would
be good to get in place.
Signed-off-by: Dan Smith <danms(a)us.ibm.com>
diff -r cb343a986592 -r 4565972096b5 src/Virt_VSMigrationService.c
--- a/src/Virt_VSMigrationService.c Tue Jul 01 12:47:31 2008 -0700
+++ b/src/Virt_VSMigrationService.c Tue Jul 01 14:20:45 2008 -0700
@@ -712,12 +712,29 @@
{
char *type;
CMPIStatus s;
+ CMPIObjectPath *ref;
const char *ind_name = NULL;
+ const char *host = NULL;
+ const char *ccname = NULL;
if (ind == NULL)
return false;
ind_name = ind_type_to_name(ind_type);
+
+ /* FIXME: This is a hack until we un-Xenify this provider */
+ ref = CMNewObjectPath(_BROKER, ns, "Xen_Foo", &s);
+ if (s.rc == CMPI_RC_OK) {
+ s = get_host_system_properties(&host, &ccname, ref, _BROKER);
+ if (s.rc == CMPI_RC_OK) {
+ CMSetProperty(ind, "SourceInstanceHost",
+ (CMPIValue *)host, CMPI_chars);
+ } else {
+ CU_DEBUG("Unable to get HostSystem properties");
+ }
+ } else {
+ CU_DEBUG("Failed to get job reference");
+ }
CU_DEBUG("Setting SourceInstance");
CMSetProperty(ind, "SourceInstance",
16 years, 5 months