HypervisorSupportMatrix/DeprecationPlan

Overview
The Nova PTL has set a deadline for all in-tree hypervisor drivers to meet Class B requirements by the Icehouse release. Support classes are defined in HypervisorSupportMatrix, and Class B means that external non-gating test feedback is being reported on every proposed change to nova, with the actual hypervisor under test.

Specific Requirements

 * 1) The job need not be voting, but must be informational so that cores have an increased level of confidence in the patch
 * 2) Results should come no later than four hours after patch submission at peak load
 * 3) Tests should include a full run of Tempest at a minimum, but may include other tests as appropriate
 * 4) Results should be accessible to the world and include log files archived for at least six months
 * 5) The tempest configuration being used must be published

Note that hypervisors missing specific bits of feature support may exclude those tests from their published Tempest configuration, and the Nova team will validate the effectiveness of the given config on a per-case basis to ensure reasonable coverage.

Timeline
The goal is to have drivers tested by the Icehouse release. The following incremental steps will be taken to provide fair warning to users of a given driver:


 * 1) At the Icehouse-2 milestone, any non-conforming drivers will receive a log message about potential deprecation on nova-compute startup
 * 2) At the Icehouse-3 milestone, any non-conforming driver will be removed in a proposed change against the tree
 * 3) Before the RC phase, the patch from above will be committed for any non-conforming driver

Plans
Fully-compliant hypervisors are listed on the HypervisorSupportMatrix page. The following expresses what we know about plans or progress for other hypervisor drivers:


 * vmwareapi: Currently reporting on all patches
 * hyperv: http://lists.openstack.org/pipermail/openstack-dev/2014-January/025428.html
 * powervm: Being removed: https://review.openstack.org/#/c/57774/ (powervm has been removed from the tree)
 * baremetal: Driver is pending deprecation anyway, external testing for Ironic is planned
 * docker: Working on a solution for "Group B" support (intending "Group A" for Juno)
 * libvirt/lxc: No plans?
 * libvirt/xen: http://lists.openstack.org/pipermail/openstack-dev/2013-November/019564.html
 * xenapi: Currently reporting on all patches: https://wiki.openstack.org/wiki/XenServer/XenServer_CI