Dan Smith [Sun, 23 Oct 2016 06:20:49 +0000 (23:20 -0700)]
Add missing compat routine for Usage object
We added a v1.1 to Usage without a compat routine to go with it. It's not really
a big deal as we're not sending this over RPC anywhere yet that I know of, but
we should have this for the sake of completeness.
Balazs Gibizer [Fri, 14 Oct 2016 14:52:17 +0000 (16:52 +0200)]
Pre-add instance actions to avoid merge conflicts
NotificationAction enum values for instance actions are added in a
single commit to avoid merge conflicts when it is added one by one
during the notification transformation.
Also the notification samples added as comments for the same reason.
Change-Id: Idfe41af8718bf5e81ea1608f4c6d00d7cf60cd13
Implements: bp versioned-notification-transformation-ocata
tests: Adding functional tests to cover VM creation with sriov
Adding HostPciSRIOVDevicesInfo class to fakelibvirt module
in order to dynamically generate host's SR-IOV devices info.
Adding functional tests to cover the creation of instances with
attached sriov devices (virtual and physical).
Verifying that VFs cannot be allocated when it's parent PF is allocated
and vice-versa, when a child VF is allocated, the parent PF should not
be available.
Fixes volume related unit tests.
Fixes non-sortable None items.
Fixes __getattr__ infinite recursion.
Fixes is_dict_like method. Dicts in python 3.4 do not
have the 'has_key' method.
Huan Xie [Wed, 24 Aug 2016 02:25:10 +0000 (02:25 +0000)]
XenAPI: Fix VM live-migrate with iSCSI SR volume
With XenServer 7.0 (XCP 2.1.0), VM live migration with iSCSI volume
will fail due to no relax_xsm_sr_check in /etc/xapi.conf in Dom0.
But since XS7.0, the default value of relax_xsm_sr_check is true if
not configured in /etc/xapi.conf in Dom0.
This fix is to add checks on XCP version, if it's equal or greater
than 2.1.0, will treat relax_xsm_sr_check=true if not found in
/etc/xapi.conf
Joshua Harlow [Mon, 17 Oct 2016 20:53:10 +0000 (13:53 -0700)]
Explicitly name commands target environments
Naming envs like this is breaking the current
oslo periodic day job; a simple way to unbreak this
is to name them explicitly (which appears to be
more common).
So this changes the command listing to do just that
as well as lists py35 in the envlist (because its
a valid target).
In os-snapshots APIs, the display name is the snapshot name,
not the volume name.
The display description is the snapshot description,
not the volume description.
So fix them.
Jay Pipes [Tue, 11 Oct 2016 03:08:30 +0000 (23:08 -0400)]
Correct bug in microversion headers in placement
Found a small bug in the handling of a 406 error by the placement API's
microversion handling code that only appeared when more than one
microversion was used.
Matt Riedemann [Thu, 13 Oct 2016 18:41:27 +0000 (14:41 -0400)]
Drop deprecated support for hw_watchdog_action flavor extra spec
Since change Ic5344ec34a130ee5a0ed2c7348af0b9d79e3508e which goes
back to Icehouse we've allowed using hw_watchdog_action for both
image metadata and flavor extra specs, even though you should
use hw:watchdog_action for flavor extra specs. Well, it's finally
time to remove the transition support for hw_watchdog_action in
flavor extra specs.
Matt Riedemann [Thu, 13 Oct 2016 17:42:52 +0000 (13:42 -0400)]
Remove watchdog_actions module
The only purpose of the watchdog_actions module was
for a helper method to check against a list of enums
which are also defined in the WatchdogAction enum
field, so remove the module and just use the field enums.
Emilien Macchi [Tue, 4 Oct 2016 13:30:35 +0000 (09:30 -0400)]
Document experimental pipeline in Nova CI
Add a section in "core-review" to document how experimental pipeline would
be used by Nova developers in order to consume the resources at the
right time.
Update rolling upgrade steps from upgrades documentation
Modify rolling upgrade steps from exisitng nova upgrades
documentation. Also, add pre-requisites required for the
zero downtime upgrade under newly created "Plan your upgrade"
section.
EdLeafe [Wed, 5 Oct 2016 21:34:42 +0000 (21:34 +0000)]
Changed the name of the standard resource classes
Originally, the declared names for the resource classes defined in
objects/fields.py were an enum, as the original design assumed that any
future resource classes would be added as a software upgrade release. As
is the convention, this enum was given the name 'ALL'. With the
introduction of custom resource classes that can be added by admins, the
defined classes are no longer an enum, so the name 'ALL' is misleading.
This patch renames it to the more accurate 'STANDARD'.
Jay Pipes [Thu, 29 Sep 2016 18:32:08 +0000 (14:32 -0400)]
placement: change resource class to a StringField
This patch modifies the fields.ResourceClass field type from an
EnumField to a StringField. This keeps the over-the-wire format of the
field backwards-compatible while allowing us to add non-standardized,
custom resource classes to the new resource_classes database table.
We change all locations of fields.ResourceClass.index() and
fields.ResourceClass.from_index() to use the ResourceClassCache object
added in the previous patch in this series and add some check logic in
Inventory and Allocation object's obj_make_compatible() methods to
ensure backversioned objects requesting or sending with a resource class
string different than the set of strings in the ResourceClass field at
the time of this patch raises a ValueError.
Bartek Zurawski [Tue, 10 May 2016 15:31:19 +0000 (17:31 +0200)]
Fix issue with not removing rbd rescue disk
Currently when instance that use RBD as backend
is rescued and next unrescued, rescue image is
not removed, this cause issue when the same
instance is rescued again it's use old rescue
image not new one.
Adding hugepage and NUMA support check for aarch64
Nova ignores aarch64 while verifying for hugepage and NUMA support.
AARCH64 also supports hugepage and NUMA on the same libvirt versions as of x86.
Hence adding this chek for aarch64 also.
Gábor Antal [Tue, 30 Aug 2016 17:09:20 +0000 (19:09 +0200)]
Use more specific asserts in tests
Use asserts with more specific assert methods, e.g.: from
assertTrue(sth == None) to assertIsNone(*),
assertTrue(isinstance(inst, type)) to assertIsInstace(inst, type) or
assertTrue(not sth) to assertFalse(sth).
This change ensures a better description will be shown on fail. This is
the recommended way to use assertions provided by testtools.
Change-Id: Ia4a34e0145176e077bbf7e9ed6f69d815c6ed840 Co-authored-by: Stephen Finucane <sfinucan@redhat.com>
Matt Riedemann [Wed, 12 Oct 2016 00:41:47 +0000 (20:41 -0400)]
doc: add dev policy about no new metrics monitors
At the newton midcycle we talked about the proposed
memory bandwidth monitor plugin and decided that we
really just don't want nova in the business of metrics
gathering, and are moving to deprecate that functionality.
There are several specs open related to adding more
metrics monitors and/or exposing existing ones, so this
codifies the policy on nova as metrics gatherer.
melanie witt [Tue, 11 Oct 2016 23:59:25 +0000 (23:59 +0000)]
Always use python2.7 for functional tests
The functional testenv doesn't work with python 3.x on our codebase.
If someone is on a platform that defaults to python => python3,
functional tests will fail for them.