Matt Riedemann [Tue, 18 Oct 2016 12:47:20 +0000 (08:47 -0400)]
Update docs for serial console support
There are two changes here:
1. The serial_console config option group help text is
updated to point out that hyper-v also supports serial
console access. This is based on virt drivers that
implement the 'get_serial_console' method.
2. The hypervisor feature matrix is updated to point out
that the vmware driver does not support getting serial
console output. This is based on virt drivers that
implement the 'get_console_output' method.
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.
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.
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.
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.
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.
Matt Riedemann [Tue, 11 Oct 2016 23:47:40 +0000 (19:47 -0400)]
doc: note the future of out of tree support
The out of tree support section of the nova dev policy
document was pretty old and basically said hooks and
extension points are buyer beware, but doesn't mention
anything about why we don't want them (interoperability)
and the efforts the last few releases to actively
deprecate and remove hooks/extension points/classloading.
This change adds some more wording to that effect to
the doc.
Ken'ichi Ohmichi [Tue, 11 Oct 2016 23:27:10 +0000 (16:27 -0700)]
Add InvalidInput handling for attach-volume
If attaching the already attached volume to a server, Cinder returns
HTTP400 response to Nova but Nova didn't except the response.
Then Nova returned HTTP500 response to a client.
Tempest test I594566704b9794457d224031802d9cbf132e765f reproduces
this error case.
Jay Pipes [Wed, 28 Sep 2016 22:19:37 +0000 (18:19 -0400)]
placement: add cache for resource classes
Adds a simple caching mechanism for resource class string and integer
codes. The cache is initialized with a RequestContext in order to fetch
a DB connection but only uses the DB connection to look up string names
or integer IDs if the requested key (string or integer) isn't either in
the fields.ResourceClass.ALL collection or not already looked up in the
DB.
The next patch in this series adds code to the resource_providers.py
module that changes all occurrences of fields.ResourceClass.index() and
fields.ResourceClass.from_index() to utilize the resource class cache.
In this way, we will transparently move from a situation with resource
classes represented only as Enum-based constants to a DB-backed solution
where custom resource classes can co-exist with the standardized Enum
constants.
Jay Pipes [Tue, 27 Sep 2016 20:55:03 +0000 (16:55 -0400)]
placement: add new resource_classes table
We will store custom resource classes in the new resource_classes table.
These custom resource classes represent non-standardized resource
classes. Followup patches add the plumbing to handle existing
standardized classes currently using the fields.ResourceClass field type
and to perform CRUD operations against a /resource-classes REST API
endpoint.
Takashi NATSUME [Tue, 28 Jun 2016 07:42:31 +0000 (16:42 +0900)]
Add a hacking rule for string interpolation at logging
String interpolation should be delayed to be handled
by the logging code, rather than being done
at the point of the logging call.
So add the following hacking rule for it.
- [N354] String interpolation should be delayed at logging calls.
Markus Zoeller [Tue, 9 Aug 2016 11:55:54 +0000 (13:55 +0200)]
Don't attempt to escalate nova-manage privileges
Remove code which allowed nova-manage to attempt to escalate
privileges so that configuration files can be read by users who
normally wouldn't have access, but do have sudo access.
The privilege escalation came into nova-manage with commit e9fd01e
to solve bug 805695. That bug report didn't describe a faulty behavior
but a change request.
NOTE: This is related to change I03063d2 from Kiall Mac Innes who did
this for the "designate" project. I'm reusing the change-id from his
change to make it clear that they are related to each other.
NOTE: I removed the try-except block completely, as it doesn't make
sense to continue when we cannot read the config file (due to a wrong
path or permission errors). That's the same approach we used in the
recent "nova/cmd/policy_check" module.
https://github.com/openstack/nova/blob/master/nova/cmd/policy_check.py#L158
Co-Authored-By: Kiall Mac Innes <kiall@macinnes.ie>
Closes-Bug: 1611171
Change-Id: I03063d2af14015e6506f1b6e958f5ff219aa4a87