KVM test report on Fedora 9 (4/30)
by Zhengang Li
Distro: Fedora 9 Beta
Kernel: 2.6.25-0.121.rc5.git4.fc9
Libvirt: 0.4.1-7.fc9
CIMOM: 2.7.0-6.fc9
PyWBEM: 0.6-1
libcmpiutil: 0.3-1.fc9
libvirt-cim: 0.3-4.fc9
cimtest: changeset-127
========PASS(83)=SKIP(17)=XFAIL(7)=FAIL(16)=================
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: 85769
ComputerSystem - 06_paused_active_suspend.py: XFAIL Bug: 85769
ComputerSystem - 22_define_suspend.py: PASS
ComputerSystem - 23_suspend_suspend.py: SKIP
ComputerSystem - 27_define_suspend_errs.py: SKIP
ComputerSystem - 32_start_reboot.py: SKIP
ComputerSystem - 33_suspend_reboot.py: SKIP
ComputerSystem - 35_start_reset.py: SKIP
ComputerSystem - 40_RSC_start.py: XFAIL Bug: 91410
ComputerSystem - 41_cs_to_settingdefinestate.py: SKIP
ComputerSystem - 42_cs_gi_errs.py: PASS
ComputerSystemIndication - 01_created_indication.py: FAIL
ElementAllocatedFromPool - 01_forward.py: SKIP
ElementAllocatedFromPool - 02_reverse.py: SKIP
ElementAllocatedFromPool - 03_reverse_errs.py: FAIL
ElementAllocatedFromPool - 04_forward_errs.py: XFAIL Bug: 88651
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: FAIL
ElementConforms - 03_ectp_fwd_errs.py: XFAIL Bug: 92642
ElementConforms - 04_ectp_rev_errs.py: FAIL
ElementSettingData - 01_forward.py: PASS
ElementSettingData - 03_esd_assoc_with_rasd_errs.py: FAIL
EnabledLogicalElementCapabilities - 01_enum.py: PASS
EnabledLogicalElementCapabilities - 02_elecap_gi_errs.py: PASS
HostSystem - 01_enum.py: PASS
HostSystem - 02_hostsystem_to_rasd.py: PASS
HostSystem - 03_hs_to_settdefcap.py: PASS
HostSystem - 04_hs_to_EAPF.py: 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: 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
LogicalDisk - 01_disk.py: PASS
LogicalDisk - 02_nodevs.py: PASS
LogicalDisk - 03_ld_gi_errs.py: PASS
Memory - 01_memory.py: PASS
Memory - 02_defgetmem.py: PASS
Memory - 03_mem_gi_errs.py: PASS
NetworkPort - 01_netport.py: PASS
NetworkPort - 02_np_gi_errors.py: PASS
NetworkPort - 03_user_netport.py: FAIL
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: 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: FAIL
ReferencedProfile - 02_refprofile_errs.py: FAIL
ResourceAllocationFromPool - 01_forward.py: PASS
ResourceAllocationFromPool - 02_reverse.py: PASS
ResourceAllocationFromPool - 03_forward_errs.py: FAIL
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: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py:
XFAIL Bug: 92173
ResourcePoolConfigurationService -
06_RemoveResourcesFromResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefine - 01_forward.py: PASS
SettingsDefine - 02_reverse.py: FAIL
SettingsDefine - 03_sds_fwd_errs.py: PASS
SettingsDefine - 04_sds_rev_errs.py: PASS
SettingsDefineCapabilities - 01_forward.py: SKIP
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: FAIL
VirtualSystemManagementService - 07_addresource_neg.py: PASS
VirtualSystemManagementService - 08_modifyresource.py: XFAIL Bug: 90853
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: FAIL
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
--
- Zhengang
16 years, 6 months
[PATCH] Move this declaration up where it should be
by Dan Smith
# HG changeset patch
# User Dan Smith <danms(a)us.ibm.com>
# Date 1210089125 25200
# Node ID 8e6c9d2deb4acb4bb6039c449a7de54b2096ddba
# Parent 2ec4259b46e7b0eeb275edbd8eb2d6051318b417
Move this declaration up where it should be
Signed-off-by: Dan Smith <danms(a)us.ibm.com>
diff -r 2ec4259b46e7 -r 8e6c9d2deb4a src/Virt_RASD.c
--- a/src/Virt_RASD.c Mon May 05 09:44:13 2008 -0700
+++ b/src/Virt_RASD.c Tue May 06 08:52:05 2008 -0700
@@ -105,6 +105,7 @@ static CMPIInstance *rasd_from_vdev(cons
uint16_t type;
char *base;
char *id;
+ const char *keys[] = {"InstanceID", NULL};
if (dev->type == CIM_RES_TYPE_DISK) {
type = CIM_RES_TYPE_DISK;
@@ -129,7 +130,6 @@ static CMPIInstance *rasd_from_vdev(cons
if (inst == NULL)
return inst;
- const char *keys[] = {"InstanceID", NULL};
s = CMSetPropertyFilter(inst, properties, keys);
if (s.rc != CMPI_RC_OK)
16 years, 6 months
[PATCH] [PATCH] Unable to use install_base_schema.sh on sfcb
by Jim Fehlig
# HG changeset patch
# User Jim Fehlig <jfehlig(a)novell.com>
# Date 1210105905 21600
# Node ID 1a1eac873ee7999b6a610d1c52b04be8a981d479
# Parent 2ec4259b46e7b0eeb275edbd8eb2d6051318b417
[PATCH] Unable to use install_base_schema.sh on sfcb
install_base_schema.sh would return without importing schema. Fix directory
test to return when the directory does not exist, not when it does exist.
It looks as though the same applies for openwbem, although I did not test
with that cimom.
Signed-off-by: Jim Fehlig <jfehlig(a)novell.com>
diff -r 2ec4259b46e7 -r 1a1eac873ee7 base_schema/install_base_schema.sh.in
--- a/base_schema/install_base_schema.sh.in Mon May 05 09:44:13 2008 -0700
+++ b/base_schema/install_base_schema.sh.in Tue May 06 14:31:45 2008 -0600
@@ -78,7 +78,7 @@ install_schema_sfcb() {
local dir=$(detect_sfcb_dir)
mkdir ${dir}/CIM
- if [ -d "${dir}/CIM" ]; then
+ if [ ! -d "${dir}/CIM" ]; then
echo "Unable to determine SFCB directory"
echo "set SFCB_DIR"
return
@@ -94,7 +94,7 @@ install_schema_openwbem() {
local schema_dir=$dir/cimv$SCHEMA_VERSION
mkdir $schema_dir
- if [ -d "$schema_dir" ]; then
+ if [ ! -d "$schema_dir" ]; then
echo "Unable to determine openwbem schema directory"
return
fi
16 years, 6 months
Release roadmap for Libvirt-cim
by Gaurav Caprihan
Hi,
I'm interested in understanding the development roadmap for libvirt-cim, what is the feature set that is provided in the current release and what else can be expected in the months to come. Moreover, what is a realistic timeframe within which we can see "libvirt" like functionality being made avaiable through the CIM provider (actually managing VMs, provisioning, modifying resource allocations and other lifecycle management functions)?
Would this information be available somewhere?
Regds,
Gaurav
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.
16 years, 6 months
[PATCH] [TEST] Fixing 01_forward.py of EC to use Exception instead of BaseException
by Deepti B. Kalakeri
# HG changeset patch
# User Deepti B. Kalakeri <deeptik(a)linux.vnet.ibm.com>
# Date 1210056458 25200
# Node ID e19dd89679ab79ad10fee3632885816fd231b84d
# Parent 4810d6e5f8845402b1c31de7b6a1b66fd0a1bfcf
[TEST] Fixing 01_forward.py of EC to use Exception instead of BaseException.
Signed-off-by: Deepti B. Kalakeri <deeptik(a)linux.vnet.ibm.com>
diff -r 4810d6e5f884 -r e19dd89679ab suites/libvirt-cim/cimtest/ElementConforms/01_forward.py
--- a/suites/libvirt-cim/cimtest/ElementConforms/01_forward.py Fri May 02 17:09:19 2008 +0530
+++ b/suites/libvirt-cim/cimtest/ElementConforms/01_forward.py Mon May 05 23:47:38 2008 -0700
@@ -145,7 +145,7 @@ def main():
exp_count, count)
- except BaseException, detail:
+ except Exception, detail:
logger.error(CIM_ERROR_ASSOCIATORS, 'ElementConformsToProfile')
logger.error("Exception: %s" % detail)
status = FAIL
16 years, 6 months
CimTest Report on XenFV 01-05-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 : 75
LibVirtCIM : 571
CIMTEST : 130
======================================
PASS : 60
FAIL : 41
XFAIL : 3
SKIP : 25
-----------------
Total : 129
======================================
List of test cases that are failing:
ComputerSystem - 04_defineStartVS.py: FAIL
ComputerSystem - 05_activate_defined_start.py: FAIL
ComputerSystem - 06_paused_active_suspend.py: FAIL
ComputerSystem - 23_suspend_suspend.py: FAIL
ComputerSystem - 27_define_suspend_errs.py: FAIL
ComputerSystem - 32_start_reboot.py: FAIL
ComputerSystem - 33_suspend_reboot.py: FAIL
ComputerSystem - 35_start_reset.py: FAIL
ComputerSystem - 40_RSC_start.py: FAIL
ElementCapabilities - 01_forward.py: FAIL
ElementCapabilities - 02_reverse.py: FAIL
ElementCapabilities - 05_hostsystem_cap.py: FAIL
ElementConforms - 01_forward.py: FAIL
HostSystem - 02_hostsystem_to_rasd.py: FAIL
HostSystem - 03_hs_to_settdefcap.py: FAIL
HostedService - 02_reverse.py: FAIL
LogicalDisk - 03_ld_gi_errs.py: FAIL
Memory - 01_memory.py: FAIL
Memory - 02_defgetmem.py: FAIL
Processor - 01_processor.py: FAIL
Processor - 02_definesys_get_procs.py: FAIL
Processor - 03_proc_gi_errs.py: FAIL
RASD - 01_verify_rasd_fields.py: FAIL
ResourcePoolConfigurationService - 03_CreateResourcePool.py: FAIL
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ResourcePoolConfigurationService -
06_RemoveResourcesFromResourcePool.py: FAIL
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
SettingsDefine - 01_forward.py: FAIL
SettingsDefine - 02_reverse.py: FAIL
SettingsDefine - 03_sds_fwd_errs.py: FAIL
SettingsDefine - 04_sds_rev_errs.py: FAIL
SystemDevice - 01_forward.py: FAIL
SystemDevice - 02_reverse.py: FAIL
SystemDevice - 03_fwderrs.py: FAIL
VSSD - 01_enum.py: FAIL
VirtualSystemManagementService - 01_definesystem_name.py: FAIL
VirtualSystemManagementService - 02_destroysystem.py: FAIL
VirtualSystemManagementService - 05_destroysystem_neg.py: FAIL
VirtualSystemSettingDataComponent - 02_reverse.py: FAIL
VirtualSystemSettingDataComponent - 03_vssdc_fwd_errs.py: FAIL
VirtualSystemSettingDataComponent - 04_vssdc_rev_errs.py: FAIL
Please find the complete test result along with the failures 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: SKIP
ERROR - System has defined domains; unable to run
ComputerSystem - 03_defineVS.py: PASS
ComputerSystem - 04_defineStartVS.py: FAIL
ERROR - Failed to Start the dom: domguest
ComputerSystem - 05_activate_defined_start.py: FAIL
ERROR - Exception: (6, u'CIM_ERR_NOT_FOUND: No such instance (DomST1).')
ComputerSystem - 06_paused_active_suspend.py: FAIL
ERROR - ERROR: VS DomST1 was not created
ComputerSystem - 22_define_suspend.py: PASS
ComputerSystem - 23_suspend_suspend.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Unable to define domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ComputerSystem - 27_define_suspend_errs.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Unable to define domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ComputerSystem - 32_start_reboot.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Unable to define domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ComputerSystem - 33_suspend_reboot.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Unable to define domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ComputerSystem - 35_start_reset.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Unable to define domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ComputerSystem - 40_RSC_start.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Exception: ('Unable create domain %s using DefineSystem()', 'test_domain')
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
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: FAIL
ERROR - ElementCapabilities association classname error
ElementCapabilities - 02_reverse.py: FAIL
ERROR - Expected 1 host, got 0
CIM_ERR_FAILED: Unable to get instance for Xen_VirtualSystemMigrationCapabilities
ElementCapabilities - 03_forward_errs.py: PASS
ElementCapabilities - 04_reverse_errs.py: PASS
ElementCapabilities - 05_hostsystem_cap.py: FAIL
ERROR - Xen_HostedService returned 0 Service objects
CIM_ERR_FAILED: Unable to get instance for Xen_HostSystem
ElementConforms - 01_forward.py: FAIL
ERROR - NameError : global name 'BaseException' is not defined
ElementConforms - 02_reverse.py: PASS
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: PASS
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: FAIL
ERROR - HostedResourcePool has returned 3 instances, expected 4 instances
ERROR - SystemExit : 1
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: FAIL
ERROR - Too many hosts error
CIM_ERR_INVALID_PARAMETER: Xen_VirtualSystemMigrationService.CreationClassName="Xen_VirtualSystemMigrationService",Name="MigrationService",SystemCreationClassName="Xen_HostSystem",SystemName="elm3b43.beaverton.ibm.com"
HostedService - 03_forward_errs.py: PASS
HostedService - 04_reverse_errs.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: 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 256 MB instead of 128 MB
Memory - 02_defgetmem.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Exception: Unable to create domain domu using DefineSys()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
Memory - 03_mem_gi_errs.py: PASS
NetworkPort - 01_netport.py: XFAIL Bug: 90844
ERROR - Exception: (6, u'CIM_ERR_NOT_FOUND: No such instance (test_domain/00:11:22:33:44:55)')
Bug:<90844>
NetworkPort - 02_np_gi_errors.py: PASS
NetworkPort - 03_user_netport.py: SKIP
Processor - 01_processor.py: FAIL
ERROR - Domain not started, we're not able to check vcpu
Processor - 02_definesys_get_procs.py: FAIL
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
ERROR - Exception: Unable create domain test_domain using DefineSystem()
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
Processor - 03_proc_gi_errs.py: FAIL
ERROR - Failed to Create the dom: proc_domain
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: FAIL
ERROR - Unable to create domain VSSDC_dom
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: FAIL
ERROR - Unexpected rc code 7 and description CIM_ERR_NOT_SUPPORTED
InvokeMethod(CreateResourcePool): CIM_ERR_NOT_SUPPORTED
ResourcePoolConfigurationService - 04_CreateChildResourcePool.py: FAIL
ERROR - Unexpected rc code 7 and description CIM_ERR_NOT_SUPPORTED
InvokeMethod(CreateChildResourcePool): CIM_ERR_NOT_SUPPORTED
ResourcePoolConfigurationService - 05_AddResourcesToResourcePool.py: XFAIL Bug: 92173
ERROR - Unexpected rc code 1 and description CIM_ERR_FAILED: Unknown Method
InvokeMethod(AddResourcesToResourcePool): CIM_ERR_FAILED: Unknown Method
Bug:<92173>
ResourcePoolConfigurationService - 06_RemoveResourcesFromResourcePool.py: FAIL
ERROR - Unexpected rc code 7 and description CIM_ERR_NOT_SUPPORTED
InvokeMethod(RemoveResourcesFromResourcePool): CIM_ERR_NOT_SUPPORTED
ResourcePoolConfigurationService - 07_DeleteResourcePool.py: FAIL
ERROR - Unexpected rc code 7 and description CIM_ERR_NOT_SUPPORTED
InvokeMethod(DeleteResourcePool): CIM_ERR_NOT_SUPPORTED
SettingsDefine - 01_forward.py: FAIL
ERROR - Failed to Create the dom: domu1
SettingsDefine - 02_reverse.py: FAIL
ERROR - Failed to create the dom: virtgst
SettingsDefine - 03_sds_fwd_errs.py: FAIL
ERROR - Failed to Create the dom: domu1
SettingsDefine - 04_sds_rev_errs.py: FAIL
ERROR - Failed to Create the dom: domu1
SettingsDefineCapabilities - 01_forward.py: SKIP
SettingsDefineCapabilities - 03_forward_errs.py: PASS
SettingsDefineCapabilities - 04_forward_vsmsdata.py: PASS
SettingsDefineCapabilities - 05_reverse_vsmcap.py: PASS
SystemDevice - 01_forward.py: FAIL
ERROR - Unable to create domain test_domain
SystemDevice - 02_reverse.py: FAIL
SystemDevice - 03_fwderrs.py: FAIL
VSSD - 01_enum.py: FAIL
ERROR - Missing VSSD instance for the system VSSD_dom
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
ERROR - Unexpected rc code 1 and description:
CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
InvokeMethod(DefineSystem): CIM_ERR_FAILED: ResourceSettings Error: Resource type not supported on this platform
VirtualSystemManagementService - 02_destroysystem.py: FAIL
ERROR - Unknow exception happened
ERROR - (1, u'CIM_ERR_FAILED: Failed to find domain')
ERROR - Destroyed multiple domains
InvokeMethod(DestroySystem): CIM_ERR_FAILED: Failed to find domain
VirtualSystemManagementService - 03_definesystem_ess.py: PASS
VirtualSystemManagementService - 04_definesystem_ers.py: PASS
VirtualSystemManagementService - 05_destroysystem_neg.py: FAIL
ERROR - destroy_fail>>noname: Error executing DestroySystem, exception details below
ERROR - (1, u'CIM_ERR_FAILED: Unable to retrieve domain name.')
ERROR - destroy_fail>>nonexistent: Error executing DestroySystem, exception details below
ERROR - (1, u'CIM_ERR_FAILED: Failed to find domain')
InvokeMethod(DestroySystem): CIM_ERR_FAILED: Unable to retrieve domain name.
InvokeMethod(DestroySystem): CIM_ERR_FAILED: Failed to find domain
VirtualSystemManagementService - 06_addresource.py: SKIP
VirtualSystemManagementService - 07_addresource_neg.py: PASS
VirtualSystemManagementService - 08_modifyresource.py: XFAIL Bug: 90853
ERROR - Error invoking ModifyRS
ERROR - (1, u"CIM_ERR_FAILED: Unknown system `rstest_domain'")
InvokeMethod(ModifyResourceSettings): CIM_ERR_FAILED: Unknown system `rstest_domain'
Bug:<90853>
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: FAIL
ERROR - Failed to create the dom: VSSDC_dom
VirtualSystemSettingDataComponent - 03_vssdc_fwd_errs.py: FAIL
ERROR - Unable to create domain domu1
VirtualSystemSettingDataComponent - 04_vssdc_rev_errs.py: FAIL
ERROR - Unable to create domain domu1
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, 6 months
[PATCH] Avoid concatenating a NULL device XML string in xmlgen
by Dan Smith
# HG changeset patch
# User Dan Smith <danms(a)us.ibm.com>
# Date 1210005841 25200
# Node ID 0b51247ab15043ace24a18b6ba56a40be765fb9c
# Parent 3e785d8dbe70b756a8cb18c7ab43214d2bb4a8b3
Avoid concatenating a NULL device XML string in xmlgen
Signed-off-by: Dan Smith <danms(a)us.ibm.com>
diff -r 3e785d8dbe70 -r 0b51247ab150 libxkutil/xmlgen.c
--- a/libxkutil/xmlgen.c Fri May 02 16:32:37 2008 -0400
+++ b/libxkutil/xmlgen.c Mon May 05 09:44:01 2008 -0700
@@ -329,7 +329,8 @@ static bool concat_devxml(char **xml,
func(&_xml, &list[i]);
}
- astrcat(xml, _xml);
+ if (_xml != NULL)
+ astrcat(xml, _xml);
free(_xml);
return true;
16 years, 6 months
[PATCH] (#2) Update web content to match libvirt.org
by Jay Gagnon
# HG changeset patch
# User Jay Gagnon <grendel(a)linux.vnet.ibm.com>
# Date 1209760357 14400
# Node ID 0b26d79ea3283461b349d20dbcfdf1715344afcd
# Parent 02269d31d296b603dd99b5fd1c235c1a987f5a49
(#2) Update web content to match libvirt.org
Dan's problem seems to have been a matter of needing an autoconfiscate, so no related changes there.
Changes from 1 to 2:
Cleaned up a few html validation things.
Signed-off-by: Jay Gagnon <grendel(a)linux.vnet.ibm.com>
diff -r 02269d31d296 -r 0b26d79ea328 doc/Makefile.am
--- a/doc/Makefile.am Fri May 02 08:18:24 2008 -0700
+++ b/doc/Makefile.am Fri May 02 16:32:37 2008 -0400
@@ -1,23 +1,26 @@ XSLTPROC = /usr/bin/xsltproc
XSLTPROC = /usr/bin/xsltproc
+XMLLINT = /usr/bin/xmllint
-WEB_PAGES = index.html \
- architecture.html \
- downloads.html \
- intro.html \
- news.html \
- patches.html \
- platforms.html \
- schema.html
+dot_html_in = $(wildcard *.html.in)
+dot_html = $(dot_html_in:%.html.in=%.html)
-EXTRA_DIST = site.xsl libvirt-cim.html $(WEB_PAGES)
-
-$(WEB_PAGES): libvirt-cim.html site.xsl
- -@(if [ -x $(XSLTPROC) ]; then \
- $(XSLTPROC) --nonet --html $(top_srcdir)/doc/site.xsl $(top_srcdir)/doc/libvirt-cim.html > index.html; \
- fi);
+EXTRA_DIST = site.xsl $(dot_html) $(dot_html_in)
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)
@INSTALL@ -m 0644 $(srcdir)/*.html $(DESTDIR)$(HTML_DIR)
-all: $(WEB_PAGES)
+all: $(dot_html)
+
+%.html.tmp: %.html.in site.xsl page.xsl sitemap.html.in
+ @(if [ -x $(XSLTPROC) ] ; then \
+ echo "Generating $@"; \
+ name=`echo $@ | sed -e 's/.tmp//'`; \
+ echo "name: $$name"; \
+ $(XSLTPROC) --stringparam pagename $$name --nonet --html $(top_srcdir)/doc/site.xsl $< > $@ || (rm $@ && exit 1) ; fi )
+
+
+%.html: %.html.tmp
+ @(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating $@" ; \
+ $(XMLLINT) --nonet --format --valid $< > $@ || : ; fi );
diff -r 02269d31d296 -r 0b26d79ea328 doc/architecture.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/architecture.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,30 @@
+<html>
+ <body>
+ <h1>Architecture</h1>
+
+ <p>
+ The libvirt-cim provider consists of two major parts:
+ </p>
+ <ul>
+ <li>
+ The provider classes themselves (<tt>src/</tt>)
+ </li>
+ <li>
+ A helper library of common components (<tt>libxkutil/</tt>)
+ </li>
+ </ul>
+ <p>
+ The provider classes implement the actual CIM class model. Some of
+ the provider libraries implement one CIM class and one providier.
+ However, many of them perform more than one task. For example,
+ the <tt>Virt_Device</tt> and <tt>Virt_DevicePool</tt> providers
+ implement the device and device pool classes for each of the major
+ device types: Memory, Processor, Network, and Disk.
+ </p>
+ <p>
+ The helper library contains common routines that almost all of the
+ providers use, such as libvirt connection type detection and device
+ and system XML parsing.
+ </p>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/downloads.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/downloads.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,27 @@
+<html>
+ <body>
+ <h1>Downloads</h1>
+
+ <p>
+ Official releases can be found on the libvirt.org
+ <a href="ftp://libvirt.org/libvirt-cim">FTP</a> server. Alternatively,
+ you can grab a
+ <a href="http://libvirt.org/hg/libvirt-cim/archive/tip.tar.gz">tarball</a> or
+ <a href="http://libvirt.org/hg/libvirt-cim/archive/tip.zip">zip</a> file
+ snapshot of the development repository. These snapshots will have the
+ latest features (and bugs).
+ </p>
+ <p>
+ The libvirt-cim development tree can be found in the
+ <a href="http://libvirt.org/hg">libvirt.org/hg</a> repository.
+ </p>
+ <p>
+ To get a copy of the development tree, use
+ <a href="http://www.selenic.com/mercurial/wiki/">mercurial</a>'s clone
+ feature:
+ </p>
+ <pre>
+ $ hg clone http://libvirt.org/hg/libvirt-cim
+ </pre>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/generic.css
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/generic.css Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,75 @@
+
+body {
+ margin: 0em;
+ padding: 0px;
+ color: rgb(0,0,0);
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 80%;
+// font-size: 83%;
+}
+
+p, ul, ol, dl {
+ padding: 0px;
+ margin: 0px;
+}
+
+ol,ul {
+ margin-left: 3em;
+}
+
+ol,ul,dl,p {
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+p:first-line {
+ margin-right: 1em;
+}
+
+div.body p:first-letter {
+ font-size: 1.2em;
+ font-weight: bold;
+}
+
+h1,h2,h3,h4,h5,h6 {
+ font-weight: bold;
+ margin: 0px;
+ padding: 0px;
+ margin-top: 0.5em;
+}
+
+div.footer {
+ margin-top: 1em;
+}
+
+h1 {
+ font-size: 2em;
+}
+h2 {
+ font-size: 1.6em;
+}
+h3 {
+ font-size: 1.4em;
+}
+h4 {
+ font-size: 1.2em;
+}
+h5 {
+ font-size: 1em;
+}
+h6 {
+ font-size: 0.8em;
+}
+
+dl dt {
+ margin-left: 1em;
+ margin-right: 2em;
+ font-weight: bold;
+ font-size: larger;
+}
+
+dl dd {
+ margin-left: 2em;
+ margin-right: 2em;
+ margin-bottom: 0.5em;
+}
diff -r 02269d31d296 -r 0b26d79ea328 doc/index.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/index.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,25 @@
+<html>
+ <body>
+ <h1>What is <strong>libvirt-cim</strong>?</h1>
+ <p>
+ Libvirt-CIM is a CIM provider for managing linux virtualization platforms
+ using libvirt. It is written in C and should work in any CIMOM that
+ supports CMPI 2.0 providers. The intent is to implement the SVPC
+ virtualization class model currently available in the DMTF Experimental
+ 2.16 schema.
+ </p>
+ <p>
+ Libvirt-CIM is a CIM provider for managing linux virtualization platforms
+ using libvirt. It is written in C and should work in any CIMOM that
+ supports CMPI 2.0 providers. The intent is to implement the SVPC
+ virtualization class model currently available in the DMTF Experimental 2.
+ 16 schema.
+ </p>
+ <p>
+ The providers are currently under heavy development. Focus is on Xen
+ support right now, which means some of the providers have some "shortcuts"
+ hard-coded to Xen right now. The long-term goal is to support all of the
+ platforms that libvirt supports with minimal differences.
+ </p>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/libvirt.css
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/libvirt.css Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,343 @@
+
+
+h1 {
+ font-weight: normal;
+ color: #3c857c;
+}
+h1 strong {
+ font-weight: bold;
+}
+
+h2, h3, h4, h5, h6 {
+ color: #3c857c;
+}
+
+#header {
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ margin: 0px;
+ height: 104px;
+ width: 100%;
+ background: url(libvirt-header-bg.png);
+ border: 0px;
+}
+
+#body {
+ position: relative;
+ border: 0px;
+ padding-top: 104px;
+ left: 0px;
+ margin: 0px;
+ padding-left: 250px;
+}
+
+#content {
+ float: right;
+ padding: 0px;
+ width: 100%;
+ padding-bottom: 1em;
+}
+
+#menu {
+ border: 0px;
+ margin-left: -250px;
+ position: relative;
+ margin-top: 0px;
+ left: 0px;
+ width: 220px;
+ margin-bottom: 1em;
+}
+
+#menu ul {
+ margin: 0px;
+ padding: 0px;
+ margin-left: 40px;
+}
+
+#menu li ul {
+ margin-left: 0px;
+}
+
+#menu ul li {
+ list-style: none;
+ color: black;
+ padding: 0px;
+ font-weight: bold;
+ font-size: 1.2em;
+}
+
+#menu li ul li {
+ font-size: 1em;
+}
+
+#menu ul li a, #menu ul li span {
+ text-decoration: inherit;
+ color: inherit;
+ display: block;
+ padding: 6px;
+ margin: 2px;
+}
+
+#menu ul li .active {
+ background: #a4c6c2;
+}
+
+#menu ul.l0 li .inactive {
+ background: #c5dbd8;
+}
+
+
+#menu ul.l1 li .inactive,
+#menu ul.l2 li .inactive {
+ background: #dfebea;
+ border-left: 8px solid #dfebea;
+}
+
+#menu ul.l1 li .inactive,
+#menu ul.l1 li .active {
+ padding-left: 1em;
+}
+
+#menu ul.l1 li .inactive {
+ border-left: 6px solid #dfebea;
+}
+#menu ul.l1 li .active {
+ border-left: 6px solid #a5c6c2;
+}
+
+#menu ul.l2 li .inactive,
+#menu ul.l2 li .active {
+ padding-left: 2em;
+ border-left: 8px solid #c5dbd8;
+}
+
+
+#headerLogo {
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ height: 104px;
+ width: 400px;
+ background: url(libvirt-header-logo.png);
+}
+#headerSearch {
+ position: absolute;
+ top: 0px;
+ right: 0px;
+ padding: 2em;
+ z-index: 10;
+}
+
+#headerSearch input {
+ border: 1px solid #999999;
+ color: #999999;
+ background: white;
+ padding: 3px;
+ font-size: 1em;
+}
+
+#headerSearch #submit {
+ border: 1px solid #999999;
+ background: #eeeeee;
+ color: black;
+ padding: 3px;
+ font-size: 1em;
+}
+
+
+#sitemap ul li {
+ list-style: none;
+}
+
+#sitemap ul {
+ margin: 1em;
+ padding: 0em;
+}
+
+#sitemap ul ul {
+ padding-left: 2em;
+}
+
+#sitemap li {
+ margin: 0.5em;
+}
+
+#sitemap a {
+ color: inherit;
+ text-decoration: underline;
+ font-weight: bold;
+}
+
+pre {
+ border: 1px solid #999999;
+ background: #eeeeee;
+ color: black;
+ padding: 1em;
+}
+
+a {
+ color: #566866;
+}
+
+
+div.api {
+ border: 1px solid #999999;
+ background: #eeeeee;
+ color: black;
+}
+
+div.api pre {
+ margin: 0px;
+ border: 0px;
+ background: inherit;
+}
+
+div.api table {
+ margin: 0px;
+ padding-left: 2em;
+ font-family: fixed;
+ whitespace: pre;
+}
+
+
+h1 a, h2 a, h3 a, h4 a, h5 a {
+ color: inherit;
+ text-decoration: inherit;
+}
+
+#changelog .author {
+ color: #3c857c;
+ font-weight: bold;
+}
+
+p.image {
+ text-align: center;
+}
+
+.top_table {
+ border-collapse: collapse;
+}
+
+.top_table th {
+ background: #a4c6c2;
+}
+
+.top_table th a {
+ color: inherit;
+ text-decoration: inherit;
+}
+
+.top_table td, .top_table th {
+ border: 1px solid #999999;
+}
+
+.top_table tr:hover td, .top_table col:hover td {
+ background: #eeeeee;
+}
+
+.top_table tr td:hover {
+ background: #c5dbd8;
+}
+
+#footer {
+ clear: both;
+ position: relative;
+ margin: 0px;
+ padding: 0px;
+ border: 0px;
+ width: 100%;
+ background: #757575 url(footer_pattern.png) repeat-x;
+ height: 180px;
+}
+
+#footer p {
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ margin: 0px;
+ border: 0px solid red;
+ width: 220px;
+ text-align: center;
+}
+
+#footer p a img {
+ border: 0px;
+}
+
+#projects {
+ margin: 0px;
+ border: 0px;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ width: 100%;
+}
+
+
+#projects dl {
+ margin: 0px;
+ border: 0px solid white;
+ background: url(footer_corner.png) no-repeat;
+ height: 180px;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+}
+
+
+#projects #p1 {
+ margin-left: 25%;
+ width: 75%;
+}
+
+#projects #p2 {
+ margin-left: 50%;
+ width: 50%;
+}
+
+#projects #p3 {
+ margin-left: 75%;
+ width: 25%;
+}
+
+#projects dt, #projects dd {
+ padding: 0px;
+ margin: 0px;
+}
+
+#projects #p1 dt, #projects #p1 dd {
+ width: 33%;
+}
+#projects #p2 dt, #projects #p2 dd {
+ width: 50%;
+}
+#projects #p3 dt, #projects #p3 dd {
+ width: 99%;
+}
+
+#projects {
+}
+
+#projects span {
+ font-size: 0.8em;
+ display: block;
+ padding-left: 1em;
+ padding-top: 0.5em;
+}
+
+#projects a {
+ font-size: 0.8em;
+ display: block;
+ padding-left: 0.8em;
+ padding-top: 1em;
+}
+
+#projects a {
+ color: white;
+ text-decoration: inherit;
+}
+
+#projects span {
+ color: #ccc;
+}
diff -r 02269d31d296 -r 0b26d79ea328 doc/main.css
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/main.css Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,2 @@
+@import url(generic.css);
+@import url(libvirt.css);
diff -r 02269d31d296 -r 0b26d79ea328 doc/page.xsl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/page.xsl Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,127 @@
+<?xml version="1.0"?>
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ exclude-result-prefixes="xsl exsl"
+ version="1.0">
+
+ <!-- The sitemap.html.in page contains the master navigation structure -->
+ <xsl:variable name="sitemap" select="document('sitemap.html.in')/html/body/div[@id='sitemap']"/>
+
+ <!-- This processes the sitemap to form a context sensitive
+ navigation menu for the current page -->
+ <xsl:template match="ul" mode="menu">
+ <xsl:param name="pagename"/>
+ <xsl:param name="level"/>
+ <ul class="{concat('l', $level)}">
+ <xsl:for-each select="li">
+ <li>
+ <!-- A menu is active if there is an 'a' tag with
+ a href matching this pagename at this level
+ or a child menu -->
+ <xsl:variable name="class">
+ <xsl:choose>
+ <xsl:when test="count(.//a[@href = $pagename]) > 0">
+ <xsl:text>active</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>inactive</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- A menu should use a 'span' instead of 'a' if
+ the immediate 'a' tag has href matching the
+ current pagename -->
+ <xsl:choose>
+ <xsl:when test="$pagename = a/@href">
+ <span class="{$class}"><xsl:value-of select="a"/></span>
+ </xsl:when>
+ <xsl:when test="a/@href = 'http://wiki.libvirt.org'">
+ <a title="{./span}" class="{$class}" href="{a/@href}"><xsl:value-of select="a"/></a>
+ </xsl:when>
+ <xsl:otherwise>
+ <a title="{./span}" class="{$class}" href="{concat($href_base, a/@href)}"><xsl:value-of select="a"/></a>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <!-- A sub-menu should only be expanded it contains
+ an 'a' tag with href matching this pagename -->
+ <xsl:if test="count(.//a[@href = $pagename]) > 0">
+ <xsl:apply-templates select="ul" mode="menu">
+ <xsl:with-param name="pagename" select="$pagename"/>
+ <xsl:with-param name="level" select="$level + 1"/>
+ </xsl:apply-templates>
+ </xsl:if>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </xsl:template>
+
+ <!-- This is the master page structure -->
+ <xsl:template match="/" mode="page">
+ <xsl:param name="pagename"/>
+ <html>
+ <xsl:comment>
+ This file is autogenerated from <xsl:value-of select="$pagename"/>.in
+ Do not edit this file. Changes will be lost.
+ </xsl:comment>
+ <head>
+ <link rel="stylesheet" type="text/css" href="{$href_base}main.css"/>
+ <link rel="SHORTCUT ICON" href="{$href_base}32favicon.png"/>
+ <title>libvirt: <xsl:value-of select="html/body/h1"/></title>
+ <meta name="description" content="libvirt, virtualization, virtualization API"/>
+ </head>
+ <body>
+ <div id="header">
+ <div id="headerLogo"/>
+ <div id="headerSearch">
+ <form action="{$href_base}search.php" enctype="application/x-www-form-urlencoded" method="get">
+ <input id="query" name="query" type="text" size="12" value=""/>
+ <input id="submit" name="submit" type="submit" value="Search"/>
+ </form>
+ </div>
+ </div>
+ <div id="body">
+ <div id="content">
+ <xsl:copy-of select="html/body/*"/>
+ </div>
+ <div id="menu">
+ <xsl:apply-templates select="exsl:node-set($sitemap)/ul" mode="menu">
+ <xsl:with-param name="pagename" select="$pagename"/>
+ <xsl:with-param name="level" select="0"/>
+ </xsl:apply-templates>
+ </div>
+ </div>
+ <div id="footer">
+ <div id="projects">
+ <dl id="p1">
+ <dt><a href="http://augeas.net/">Augeas</a></dt>
+ <dd><span>A configuration editing tool and API</span></dd>
+ <dt><a href="http://libvirt.org/">libvirt</a></dt>
+ <dd><span>The open source virtualization API</span></dd>
+ </dl>
+ <dl id="p2">
+ <dt><a href="http://cobbler.et.redhat.com/">Cobbler</a></dt>
+ <dd><span>OS provisioning and profile management</span></dd>
+ <dt><a href="http://ovirt.org/">oVirt</a></dt>
+ <dd><span>Virtualization management across the data center</span></dd>
+ </dl>
+ <dl id="p3">
+ <dt><a href="http://freeipa.org/">FreeIPA</a></dt>
+ <dd><span>Identity, policy and audit management</span></dd>
+ <dt><a href="http://virt-manager.org/">Virtual Machine Manager</a></dt>
+ <dd><span>Virtualization management from the desktop</span></dd>
+ </dl>
+ </div>
+ <!--
+ <p id="et">
+ <a href="http://et.redhat.com/"><img src="{$href_base}et_logo.png" alt="A Red Hat Emerging Technology Project"/></a>
+ </p>
+ -->
+ </div>
+ </body>
+ </html>
+ </xsl:template>
+
+</xsl:stylesheet>
diff -r 02269d31d296 -r 0b26d79ea328 doc/patches.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/patches.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,195 @@
+<html>
+ <body>
+ <h1>Patches</h1>
+
+ <p>
+ To submit patches to libvirt-cim, you must follow the DCO process,
+ outlined below:
+ </p>
+ <h3>Developer's Certificate of Origin 1.1</h3>
+ <p>
+ By making a contribution to this project, I certify that:
+ </p>
+ <ol>
+ <li>
+ <p>
+ The contribution was created in whole or in part by me and I have the
+ right to submit it under the open source license indicated in the
+ file; or
+ </p>
+ </li>
+ <li>
+ <p>
+ The contribution is based upon previous work that, to the best of my
+ knowledge, is covered under an appropriate open source license and I
+ have the right under that license to submit that work with
+ modifications, whether created in whole or in part by me, under the
+ same open source license (unless I am permitted to submit under a
+ different license), as indicated in the file; or
+ </p>
+ </li>
+ <li>
+ <p>
+ The contribution was provided directly to me by some other person who
+ certified (1), (2) or (3) and I have not modified it.
+ </p>
+ </li>
+ <li>
+ <p>
+ I understand and agree that this project and the contribution are
+ public and that a record of the contribution (including all personal
+ information I submit with it, including my sign-off) is maintained
+ indefinitely and may be redistributed consistent with this project or
+ the open source license(s) involved.
+ </p>
+ </li>
+ </ol>
+ <p>
+ then you just add a line saying
+ </p>
+ <p>
+ Signed-off-by: Random J Developer <random(a)developer.example.org>
+ </p>
+ <p>
+ using your real name (sorry, no pseudonyms or anonymous contributions.)
+ </p>
+ <h3>Guidelines for Submitting Patches.</h3><p>
+ Patches should be submitted using Mercurial's patchbomb extension, and we
+ recommend using the queues extension as well. On top of that, we have some
+ guidelines you should follow when submitting patches. This makes reviewing
+ patches easier, which in turns improves the chances of your patch being
+ accepted in a timely fashion.
+ </p>
+ <p>
+ For help on how to use the patchbomb extension, see
+ <a href="http://hgbook.red-bean.com/hgbookch14.html">Section 14.4</a> of
+ <i>Distributed revision control with Mercurial</i>.
+ </p>
+ <p>
+ For help on the queues extension, see
+ <a href="http://hgbook.red-bean.com/hgbookch12.html">Chapter 12</a>.
+ </p>
+ <h4>Single Patches:</h4>
+ <ol>
+ <li>
+ <p>
+ When you add a patch to the queue you have an idea of where
+ you're going with it, and the commit message should reflect
+ that. Be specific. Avoid just saying something like,
+ "Various fixes to AllocationCapabilities." Add a list of
+ what was actually fixed, like, "Add EnumInstanceNames
+ support," and, "Eliminate duplicate instances."
+ </p>
+ </li>
+ <li>
+ <p>
+ The first line of your commit message will be the subject of
+ the patch email when you send it out, so write it like a
+ subject. Keep it short and to the point, then start a new
+ line and feel free to be as verbose as you need to be. The
+ entire commit message will be included in the patch.
+ </p>
+ </li>
+ <li>
+ <p>
+ Stay on task with a patch. If you notice other problems
+ while you are working on a patch, and they are not most
+ definitely specific to your patch, they should be another
+ patch. The same goes for nitpicking. While it might be
+ only a line or two here and there that is off track, this is
+ actually one of the easiest ways to make a patch difficult
+ to review. All the trivial changes hide what is really
+ going on. Make the unrelated changes a new patch or don't
+ make them at all.
+ </p>
+ </li>
+ <li>
+ <p>
+ If your patch addresses a strange issue or a rare edge case
+ that the reviewers are unlikely to be familiar with, make
+ sure the commit message include some example testcase with
+ results, so the reviewers can verify your patch more
+ quickly.
+ </p>
+ </li>
+ <li>
+ <p>
+ Before you email, export. If you have a patch called
+ "alloc_fixes", which would be emailed with "hg email
+ alloc_fixes", you should first run "hg export alloc_fixes".
+ This lets you review your patch. Does it have any typos in
+ the comments? Did you accidentally include an irrelevant
+ change? Is your commit message still accurate and useful?
+ This is the single biggest step in ensuring you have a good
+ patch.
+ </p>
+ </li>
+ <li>
+ <p>
+ If your patch needs to be reworked and resent, prepend a
+ "version number" to the first line of the commit message.
+ For example, "Add EnumInstance to RASD," becomes "#2 Add
+ EnumInstance to RASD." This helps mail readers thread
+ discussions correctly and helps maintainers know they are
+ applying the right version of your patch. At the end of the
+ commit message, explain what is different from one version
+ to the next. Nobody likes having to diff a diff.
+ </p>
+ </li>
+ <li>
+ <p>
+ If your patch depends on a patch that exists on the mailing
+ list but not in the tree, it is okay to send your patch to
+ the list as long as your commit message mentions the
+ dependency. It is also a good idea to import the patch into
+ your tree before you make your patch. For example, a new
+ patch called "cu_statusf API change" is on the list, and
+ your patch needs the new API. Save the email (no need to
+ trim headers) as api_change.eml, then do "hg qimport
+ api_change.eml" and "hg qpush" so that the patch is applied
+ to your tree. Now write your patch on top of it. You
+ should still indicate the dependency in your commit message.
+ </p></li>
+ </ol><h4>Patchsets:</h4><ol><li>
+ <p>
+ When you send a group of patches, Mercurial's email
+ extension will create a "header" email. Make the subject
+ and body of that email meaningful, so we know how the
+ patches relate. It's easy to say, "Each patch has a commit
+ message, it's obvious how they work together," but the rest
+ of the list usually won't agree with that. If the commit
+ messages for each patch are good, you shouldn't need more
+ than a sentence or two to tie them all together, but you do
+ need it.
+ </p>
+ </li>
+ <li>
+ <p>
+ If any of your patches are rejected and you rework them,
+ resend the entire set. This prevents things like, "So use
+ patch 1 of 4 from the set I sent yesterday, 2 and 3 of 4
+ from the patch I sent an hour later, and patch 4 of 4 from
+ today."
+ </p>
+ </li>
+ <li>
+ <p>
+ If you resend a patchset, apply part (6) of the Single
+ Patches guidelines to your "Patch [0 of 3]" header email,
+ for all the same reasons.
+ </p>
+ </li>
+ </ol>
+ <p>
+ Questions/Comments on the Guidelines should be directed to:
+ </p>
+ <p>
+ Jay Gagnon <
+ <a href="mailto:grendel@linux.vnet.ibm.com">
+ grendel(a)linux.vnet.ibm.com
+ </a>>
+ <br />
+ Patch Compliance Officer
+ </p>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/platforms.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/platforms.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,47 @@
+<html>
+ <body>
+ <h1>Platform Support</h1>
+ <p>
+ Currently, libvirt-cim is targeting Xen as its primary support
+ platform because is has the largest installed user base. The
+ long-term plan is to support many others (hopefully any that libvirt
+ supports). This includes KVM and containers.
+ </p>
+ <p>
+ The code base currently has many Xen-specific "shortcuts" that need
+ to be resolved and generalized in order to support other platforms.
+ A short list of these may include:
+ </p>
+ <ul>
+ <li>
+ The XML generation and parsing code and the related device
+ modeling code.
+ </li>
+ <li>
+ The libvirt connection logic. Right now, (in most places) we
+ detect the current hypervisor in use and connect to libvirt
+ appropriately. This may or may not be the correct behavior in a
+ situation where you could need to support containers and QEMU
+ virtual machines.
+ </li>
+ <li>
+ Some lingering hard-coded "Xen_Foo" class names.
+ </li>
+ </ul>
+ <p>
+ Further, supporting new platforms have some registration and
+ modeling implications:
+ </p>
+ <ul>
+ <li>
+ Additions to the MOF and registration files for "branded"
+ classes (Xen_Foo, KVM_Foo, etc)
+ </li>
+ <li>
+ Modifications to some of the association providers that register
+ separate CMPI provider structures for each class type they handle
+ (to avoid duplicate results in the general case)
+ </li>
+ </ul>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/releases.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/releases.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,25 @@
+<html>
+ <body>
+ <h1>Releases</h1>
+
+ <p>
+ <strong>livirt-cim-0.1: Jan 14 2008</strong>
+ </p>
+ <ul>
+ <li>
+ Initial Release
+ </li>
+ <li>
+ Focused on Xen paravirtual guest support
+ </li>
+ </ul>
+ <p>
+ <strong>libcmpiutil-0.1: Nov 30 2007</strong>
+ </p>
+ <ul>
+ <li>
+ Initial Release
+ </li>
+ </ul>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/schema.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/schema.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,74 @@
+<html>
+ <body>
+ <h1>Schema</h1>
+ <p>
+ The libvirt-cim provider depends on an installed
+ <a href="http://www.dmtf.org/standards/cim/cim_schema_v216/">DMTF
+ CIM v2.16</a> Experimental schema. The package can be obtained
+ <a href="http://www.dmtf.org/standards/cim/cim_schema_v216/cimv216Experimental-MOF...">
+ here
+ </a>.
+ </p>
+
+ <h4>To install the schema in Pegasus:</h4>
+ <pre>
+ $ PEGASUS_REPO=/var/lib/Pegasus # adjust this as needed
+ $ mkdir cim216
+ $ cd cim216
+ $ unzip $PATH_TO_ZIPFILE
+ $ sudo cimmofl -uc -aEV -R$PEGASUS_REPO -n /root/virt cimv216.mof
+ $ sudo cimmofl -uc -aEV -R$PEGASUS_REPO -n /root/virt qualifiers.mof
+ $ sudo cimmofl -uc -aEV -R$PEGASUS_REPO -n /root/virt qualifiers_optional.mof
+ $ sudo cimmofl -uc -aEV -R$PEGASUS_REPO -n /root/interop cimv216-interop.mof
+ </pre>
+
+ <h4>To install the schema in SFCB:</h4>
+ <pre>
+ $ SFCB_CIM=/usr/local/share/sfcb/CIM # adjust this as needed
+ $ mkdir cim216
+ $ cd cim216
+ $ unzip $PATH_TO_ZIPFILE
+ $ mv cimv216.mof CIM_Schema.mof
+ $ sudo cp * $SFCB_CIM
+ $ sudo sfcbrepos
+ </pre>
+ <p>
+ <strong>Note:</strong> in both cases, the CIM v2.16 schema seems to have a
+ few classes that don't register correctly. You may need to
+ disable installation of classes with something like the
+ following:
+ </p>
+ <pre>
+ --- CIM_Schema.mof 2007-10-15 00:15:44.000000000 -0700
+ +++ cimv216.mof 2007-10-22 10:11:19.000000000 -0700
+ @@ -507,3 +507,3 @@
+ #pragma include ("Policy/CIM_SharedSecretAuthentication.mof")
+ -#pragma include ("Security/CIM_SecurityIndication.mof")
+ +//#pragma include ("Security/CIM_SecurityIndication.mof")
+ #pragma include ("Support/PRS_Activity.mof")
+ @@ -728,4 +728,4 @@
+ #pragma include ("Policy/CIM_PolicyConditionInPolicyRule.mof")
+ -#pragma include ("Security/CIM_IPNetworkSecurityIndication.mof")
+ -#pragma include ("Security/CIM_IPPacketFilterIndication.mof")
+ +//#pragma include ("Security/CIM_IPNetworkSecurityIndication.mof")
+ +//#pragma include ("Security/CIM_IPPacketFilterIndication.mof")
+ #pragma include ("Support/PRS_ActivityContact.mof")
+ </pre>
+ <p>
+ <strong>cimv216-interop.mof</strong> is not part of the official DMTF
+ CIM v2.16 schema package. Please create with the following content:
+ </p>
+ <pre>
+ #pragma locale ("en_US")
+ #pragma include ("qualifiers.mof")
+ #pragma include ("qualifiers_optional.mof")
+ #pragma include ("Core/CIM_ManagedElement.mof")
+ #pragma include ("Interop/CIM_RegisteredProfile.mof")
+ #pragma include ("Interop/CIM_RegisteredSubProfile.mof")
+ #pragma include ("Core/CIM_Dependency.mof")
+ #pragma include ("Interop/CIM_ElementConformsToProfile.mof")
+ #pragma include ("Interop/CIM_ReferencedProfile.mof")
+ #pragma include ("Interop/CIM_SubProfileRequiresProfile.mof")
+ </pre>
+ </body>
+</html>
diff -r 02269d31d296 -r 0b26d79ea328 doc/site.xsl
--- a/doc/site.xsl Fri May 02 08:18:24 2008 -0700
+++ b/doc/site.xsl Fri May 02 16:32:37 2008 -0400
@@ -1,258 +1,25 @@
<?xml version="1.0"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
- <xsl:output method="xml" encoding="ISO-8859-1" indent="yes"
- doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
- doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ exclude-result-prefixes="xsl exsl"
+ version="1.0">
+
+ <xsl:import href="page.xsl"/>
+
+ <xsl:output
+ method="xml"
+ encoding="ISO-8859-1"
+ indent="yes"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:variable name="href_base" select="''"/>
- <xsl:variable name="menu_name">Main Menu</xsl:variable>
-<!--
- - returns the filename associated to an ID in the original file
- -->
- <xsl:template name="filename">
- <xsl:param name="name" select="string(@href)"/>
- <xsl:choose>
- <xsl:when test="$name = '#Introducti'">
- <xsl:text>intro.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Documentat'">
- <xsl:text>docs.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Reporting'">
- <xsl:text>development.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#help'">
- <xsl:text>help.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Help'">
- <xsl:text>help.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Errors'">
- <xsl:text>errors.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Downloads'">
- <xsl:text>downloads.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#News'">
- <xsl:text>news.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Contributi'">
- <xsl:text>development.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#architecture'">
- <xsl:text>architecture.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#FAQ'">
- <xsl:text>FAQ.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Platforms'">
- <xsl:text>platforms.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Schema'">
- <xsl:text>schema.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = '#Patches'">
- <xsl:text>patches.html</xsl:text>
- </xsl:when>
- <xsl:when test="$name = ''">
- <xsl:text>unknown.html</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$name"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-<!--
- - The global title
- -->
- <xsl:variable name="globaltitle" select="string(/html/body/h1[1])"/>
-<!--
- the main menu box
- -->
- <xsl:template name="linkList">
- <div class="linkList2">
- <div class="llinks2">
- <h3 class="links2"><span>main menu</span></h3>
- <ul>
- <li><a href="{$href_base}index.html">Home</a></li>
- <xsl:for-each select="/html/body/h2">
- <xsl:variable name="filename">
- <xsl:call-template name="filename">
- <xsl:with-param name="name" select="concat('#', string(a[1]/@name))"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:if test="$filename != ''">
- <li>
- <xsl:element name="a">
- <xsl:attribute name="href">
- <xsl:value-of select="$filename"/>
- </xsl:attribute>
- <xsl:if test="$filename = 'docs.html'">
- <xsl:attribute name="style">font-weight:bold</xsl:attribute>
- </xsl:if>
- <xsl:value-of select="."/>
- </xsl:element>
- </li>
- </xsl:if>
- </xsl:for-each>
- </ul>
- </div>
- <div class="llinks2">
- <h3 class="links2"><span>related links</span></h3>
- <ul>
- <li> <a href="https://www.redhat.com/mailman/listinfo/libvirt-cim/">Mailing list</a></li>
- <li> <a href="http://libvirt.org/">libvirt</a></li>
- <li><a href="http://xmlsoft.org/"> <img src="http://libvirt.org/Libxml2-Logo-90x34.gif" alt="Made with Libxml2 Logo" /></a></li>
- </ul>
- <p class='credits'>Graphics and design by <a href="mail:dfong@redhat.com">Diana Fong</a></p>
- </div>
- </div>
+ <xsl:template match="/">
+ <xsl:apply-templates select="." mode="page">
+ <xsl:with-param name="pagename" select="$pagename"/>
+ </xsl:apply-templates>
</xsl:template>
-<!--
- the page title
- -->
-
- <xsl:template name="titlebox">
- <xsl:param name="title"/>
- <h1 class="style1"><xsl:value-of select="$title"/></h1>
- </xsl:template>
-
-<!--
- - Write the styles in the head
- -->
- <xsl:template name="style">
- <link rel="stylesheet" type="text/css" href="http://libvirt.org/libvirt.css" />
- <link rel="SHORTCUT ICON" href="/32favicon.png" />
- </xsl:template>
-
-<!--
- - The top section
- -->
- <xsl:template name="top">
- <div id="top">
- <img src="{$href_base}libvirtHeader.png" alt="Libvirt the virtualization API" />
- </div>
- </xsl:template>
-
-<!--
- - The top section for the main page
- -->
- <xsl:template name="topmain">
- <div id="topmain">
- <img src="{$href_base}libvirtLogo.png" alt="Libvirt the virtualization API" />
- </div>
- </xsl:template>
-
-<!--
- - The bottom section
- -->
- <xsl:template name="bottom">
- <div id="bottom">
- <p class="p1"></p>
- </div>
- </xsl:template>
-
-<!--
- - Handling of nodes in the body after an H2
- - Open a new file and dump all the siblings up to the next H2
- -->
- <xsl:template name="subfile">
- <xsl:param name="header" select="following-sibling::h2[1]"/>
- <xsl:variable name="filename">
- <xsl:call-template name="filename">
- <xsl:with-param name="name" select="concat('#', string($header/a[1]/@name))"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:variable name="title">
- <xsl:value-of select="$header"/>
- </xsl:variable>
- <xsl:document href="{$filename}" method="xml" encoding="ISO-8859-1"
- doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
- doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html>
- <head>
- <xsl:call-template name="style"/>
- <xsl:element name="title">
- <xsl:value-of select="$title"/>
- </xsl:element>
- </head>
- <body>
- <div id="container">
- <div id="intro">
- <div id="adjustments"/>
- <div id="pageHeader"/>
- <div id="content2">
- <xsl:call-template name="titlebox">
- <xsl:with-param name="title" select="$title"/>
- </xsl:call-template>
- <xsl:apply-templates mode="subfile" select="$header/following-sibling::*[preceding-sibling::h2[1] = $header and name() != 'h2' ]"/>
- </div>
- </div>
- <xsl:call-template name="linkList"/>
- <xsl:call-template name="bottom"/>
- </div>
- </body>
- </html>
- </xsl:document>
- </xsl:template>
-
- <xsl:template mode="subcontent" match="@*|node()">
- <xsl:copy>
- <xsl:apply-templates mode="subcontent" select="@*|node()"/>
- </xsl:copy>
- </xsl:template>
-
- <xsl:template mode="content" match="@*|node()">
- <xsl:if test="name() != 'h1' and name() != 'h2'">
- <xsl:copy>
- <xsl:apply-templates mode="subcontent" select="@*|node()"/>
- </xsl:copy>
- </xsl:if>
- </xsl:template>
-
- <xsl:template mode="subfile" match="@*|node()">
- <xsl:copy>
- <xsl:apply-templates mode="content" select="@*|node()"/>
- </xsl:copy>
- </xsl:template>
-
-<!--
- - Handling of the initial body and head HTML document
- -->
- <xsl:template match="body">
- <xsl:variable name="firsth2" select="./h2[1]"/>
- <body>
- <div id="container">
- <div id="intro">
- <div id="adjustments">
- <p class="p1"></p>
- </div>
- <div id="content">
- <xsl:apply-templates mode="content" select="($firsth2/preceding-sibling::*)"/>
- <xsl:for-each select="./h2">
- <xsl:call-template name="subfile">
- <xsl:with-param name="header" select="."/>
- </xsl:call-template>
- </xsl:for-each>
- </div>
- </div>
- <xsl:call-template name="linkList"/>
- <xsl:call-template name="bottom"/>
- </div>
- </body>
- </xsl:template>
- <xsl:template match="head">
- </xsl:template>
- <xsl:template match="html">
- <xsl:message>Generating the Web pages</xsl:message>
- <html>
- <head>
- <xsl:call-template name="style"/>
- <title>the virtualization API</title>
- </head>
- <xsl:apply-templates/>
- </html>
- </xsl:template>
</xsl:stylesheet>
diff -r 02269d31d296 -r 0b26d79ea328 doc/sitemap.html.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/sitemap.html.in Fri May 02 16:32:37 2008 -0400
@@ -0,0 +1,50 @@
+<html>
+ <body>
+ <h1>Sitemap</h1>
+
+ <div id="sitemap">
+ <ul>
+ <li>
+ <a href="index.html">CIM</a>
+ <span>The libvirt-cim CIM providers</span>
+ <ul>
+ <li>
+ <a href="releases.html">Releases</a>
+ <span>Official releases</span>
+ </li>
+ <li>
+ <a href="downloads.html">Downloads</a>
+ <span>Development code</span>
+ </li>
+ <li>
+ <a href="patches.html">Patches</a>
+ <span>How to contribute</span>
+ </li>
+ <li>
+ <a href="schema.html">Schema</a>
+ <span>Required CIM Schema for the providers</span>
+ </li>
+ <li>
+ <a href="platforms.html">Platform Support</a>
+ <span>Target platforms</span>
+ </li>
+ <li>
+ <a href="architecture.html">Architecture</a>
+ <span>Basic code structure</span>
+ </li>
+ <li>
+ <a href="https://www.redhat.com/mailman/listinfo/libvirt-cim/">
+ Mailing List
+ </a>
+ <span>Report bugs, discuss development</span>
+ </li>
+ </ul>
+ </li>
+ <li>
+ <a href="sitemap.html">Sitemap</a>
+ <span>Overview of all content on the website</span>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
16 years, 6 months
[PATCH] Generate bzip2 tar archive of the distribution
by Jim Fehlig
# HG changeset patch
# User Jim Fehlig <jfehlig(a)novell.com>
# Date 1209749753 21600
# Node ID 1b4ca562f6f19455680f95db62b27c351de62e13
# Parent 02269d31d296b603dd99b5fd1c235c1a987f5a49
Generate bzip2 tar archive of the distribution
SuSE packages generally use bzip2 tar archives instead of gzip. This patch
permits creation of bzip2 archive, in addition to gzip, when invoking
'make dist' target.
Signed-off-by: Jim Fehlig <jfehlig(a)novell.com>
diff -r 02269d31d296 -r 1b4ca562f6f1 Makefile.am
--- a/Makefile.am Fri May 02 08:18:24 2008 -0700
+++ b/Makefile.am Fri May 02 11:35:53 2008 -0600
@@ -1,4 +1,6 @@
# Copyright IBM Corp. 2007
+AUTOMAKE_OPTIONS=dist-bzip2
+
SUBDIRS = libxkutil src doc base_schema
MOFS = \
16 years, 6 months