]> xenbits.xensource.com Git - osstest/openstack-nova.git/log
osstest/openstack-nova.git
8 years agohacking: Use uuidutils or uuidsentinel to generate UUID
hussainchachuliya [Thu, 29 Sep 2016 14:29:03 +0000 (19:59 +0530)]
hacking: Use uuidutils or uuidsentinel to generate UUID

Added hacking check to ensure that UUID is being generated from
oslo_utils.uuidutils or uuidsentinel(in case of test cases)
instead of uuid4().

Change-Id: I73ee63fbd4f451d3aa5dc1a2a734d68c308b4440

8 years agoReplace uuid4() with uuidsentinel
hussainchachuliya [Mon, 19 Sep 2016 14:34:35 +0000 (20:04 +0530)]
Replace uuid4() with uuidsentinel

As of now, in most of the test cases, uuidsentinel is used for
generating a UUID except at some places where uuid4() is used.
In order to maintain consistency, we propose to use uuidsentinel
module for generating UUIDs throughout the test cases.

There are some cases where unique UUIDs are required. For such
cases, generate_uuid() from oslo_utils.uuidutils is used.

Change-Id: Ifaee2f79fc33d189751c4e3f405b579dd8d89784

8 years agoReplace uuid4() with uuidsentinel
hussainchachuliya [Mon, 19 Sep 2016 13:59:20 +0000 (19:29 +0530)]
Replace uuid4() with uuidsentinel

As of now, in most of the test cases, uuidsentinel is used for
generating a UUID except at some places where uuid4() is used.
In order to maintain consistency, we propose to use uuidsentinel
module for generating UUIDs throughout the test cases.

There are some cases where unique UUIDs are required. For such
cases, generate_uuid() from oslo_utils.uuidutils is used.

Change-Id: I61914796aa94b453669add2e71b3d5d704633176

8 years agoReplace uuid4() with uuidsentinel
hussainchachuliya [Mon, 19 Sep 2016 13:15:41 +0000 (18:45 +0530)]
Replace uuid4() with uuidsentinel

As of now, in most of the test cases, uuidsentinel is used for
generating a UUID except at some places where uuid4() is used.
In order to maintain consistency, we propose to use uuidsentinel
module for generating UUIDs throughout the test cases.

There are some cases where unique UUIDs are required. For such
cases, generate_uuid() from oslo_utils.uuidutils is used.

Change-Id: Ie0e0fc1878e3f18065a11539b15d8c4ee893a29a

8 years agoMerge "libvirt: Acquire TCP ports for console during live migration"
Jenkins [Mon, 28 Nov 2016 23:46:41 +0000 (23:46 +0000)]
Merge "libvirt: Acquire TCP ports for console during live migration"

8 years agoMerge "vif: allow for creation of multiqueue taps in vrouter"
Jenkins [Mon, 28 Nov 2016 23:46:06 +0000 (23:46 +0000)]
Merge "vif: allow for creation of multiqueue taps in vrouter"

8 years agoMerge "Check deleted flag in Instance.create()"
Jenkins [Mon, 28 Nov 2016 23:44:05 +0000 (23:44 +0000)]
Merge "Check deleted flag in Instance.create()"

8 years agoMerge "objects: Move 'arch' to 'fields.Architecture'"
Jenkins [Mon, 28 Nov 2016 19:32:15 +0000 (19:32 +0000)]
Merge "objects: Move 'arch' to 'fields.Architecture'"

8 years agoCheck deleted flag in Instance.create()
Dan Smith [Mon, 28 Nov 2016 15:24:21 +0000 (07:24 -0800)]
Check deleted flag in Instance.create()

An attempt to create an instance with the deleted flag set will
not work as intended, especially from instance.create(), which
can't properly pass the yet-to-be-determined deleted=id protocol.

This makes Instance.create() throw an error like the one for
being already created, and fixes the one test where we depend
on this working.

Change-Id: I60d18ca694a2eb7f333c0cf2a898cf8f17eb83dd
Closes-Bug: #1644513

8 years agoMerge "Add RPC version aliases for Newton"
Jenkins [Mon, 28 Nov 2016 18:01:39 +0000 (18:01 +0000)]
Merge "Add RPC version aliases for Newton"

8 years agolibvirt: Acquire TCP ports for console during live migration
Markus Zoeller [Tue, 22 Nov 2016 16:08:14 +0000 (17:08 +0100)]
libvirt: Acquire TCP ports for console during live migration

During a live migration process we reserve serial ports on
destination host and update domain XML during migration to
use the new reserved ports from destination.

If the migration succeeds we release ports on the source host.
If the migration fails we release reserved ports on the
destination host.

Co-Authored-By: Sahid Ferdjaoui <sahid.ferdjaoui@redhat.com>
Change-Id: Ie2524191d22cca2287eb7dbaa22b74d43e43c896
Closes-Bug: #1455252

8 years agoMerge "Remove sata bus for virtuozzo hypervisor"
Jenkins [Mon, 28 Nov 2016 14:55:11 +0000 (14:55 +0000)]
Merge "Remove sata bus for virtuozzo hypervisor"

8 years agoMerge "linux_net: allow for creation of multiqueue taps"
Jenkins [Mon, 28 Nov 2016 12:35:07 +0000 (12:35 +0000)]
Merge "linux_net: allow for creation of multiqueue taps"

8 years agoMerge "List support for force-completing a live migration in Feature support matrix"
Jenkins [Mon, 28 Nov 2016 10:41:17 +0000 (10:41 +0000)]
Merge "List support for force-completing a live migration in Feature support matrix"

8 years agoList support for force-completing a live migration in Feature support matrix
int32bit [Tue, 15 Nov 2016 18:06:17 +0000 (02:06 +0800)]
List support for force-completing a live migration in Feature support matrix

Change-Id: I0aedc23b8fed2fe6b60088f8ff131b3fa31b974c
Closes-Bug: #1641753

8 years agoMerge "placement: genericize on resource providers"
Jenkins [Sun, 27 Nov 2016 11:19:38 +0000 (11:19 +0000)]
Merge "placement: genericize on resource providers"

8 years agoMerge "Use available port binding constants"
Jenkins [Sat, 26 Nov 2016 17:12:24 +0000 (17:12 +0000)]
Merge "Use available port binding constants"

8 years agovif: allow for creation of multiqueue taps in vrouter
Roman Podoliaka [Thu, 3 Nov 2016 10:51:48 +0000 (12:51 +0200)]
vif: allow for creation of multiqueue taps in vrouter

This extends the work done in libvirt-virtio-net-multiqueue bp to
allow for enabling multiqueue mode for vrouter VIFs (OpenContrail).
In case of vrouter mechanism is slightly different and a tap device
created by nova-compute must already be in the multiqueue mode,
when it's passed to vrouter.

Implements blueprint vif-vrouter-multiqueue

Co-Authored-By: Michal Dubiel <md@semihalf.com>
Change-Id: I7b20650c8a772fdaa05707e0dfe27ad32481a2d3

8 years agoMerge "Using get() method to prevent KeyError"
Jenkins [Sat, 26 Nov 2016 10:19:42 +0000 (10:19 +0000)]
Merge "Using get() method to prevent KeyError"

8 years agoMerge "Placement api: Add informative message to 404 response."
Jenkins [Fri, 25 Nov 2016 21:12:55 +0000 (21:12 +0000)]
Merge "Placement api: Add informative message to 404 response."

8 years agoMerge "libvirt: prepare domain XML update for serial ports"
Jenkins [Fri, 25 Nov 2016 16:57:47 +0000 (16:57 +0000)]
Merge "libvirt: prepare domain XML update for serial ports"

8 years agoobjects: Move 'arch' to 'fields.Architecture'
Stephen Finucane [Thu, 18 Aug 2016 09:17:21 +0000 (10:17 +0100)]
objects: Move 'arch' to 'fields.Architecture'

Resolve the relevant TODO. Migrate tests in the process.

Change-Id: Ib27a52f603f557e99940ec88839b77860812fdd3

8 years agoMerge "libvirt: refactor console device creation methods"
Jenkins [Thu, 24 Nov 2016 22:19:23 +0000 (22:19 +0000)]
Merge "libvirt: refactor console device creation methods"

8 years agoMerge "hardware: Flatten functions"
Jenkins [Thu, 24 Nov 2016 21:23:17 +0000 (21:23 +0000)]
Merge "hardware: Flatten functions"

8 years agoMerge "libvirt: Delete the lase_device of find_disk_dev_for_disk_bus"
Jenkins [Thu, 24 Nov 2016 20:10:39 +0000 (20:10 +0000)]
Merge "libvirt: Delete the lase_device of find_disk_dev_for_disk_bus"

8 years agoMerge "libvirt/guest.py: Update docstrings of block device methods"
Jenkins [Thu, 24 Nov 2016 19:37:49 +0000 (19:37 +0000)]
Merge "libvirt/guest.py: Update docstrings of block device methods"

8 years agoMerge "libvirt: Call host connection callbacks asynchronously"
Jenkins [Thu, 24 Nov 2016 19:36:48 +0000 (19:36 +0000)]
Merge "libvirt: Call host connection callbacks asynchronously"

8 years agoMerge "libvirt: handle os-brick InvalidConnectorProtocol on init"
Jenkins [Thu, 24 Nov 2016 19:36:05 +0000 (19:36 +0000)]
Merge "libvirt: handle os-brick InvalidConnectorProtocol on init"

8 years agoMerge "hardware: Split '_add_cpu_pinning_constraint'"
Jenkins [Thu, 24 Nov 2016 19:12:39 +0000 (19:12 +0000)]
Merge "hardware: Split '_add_cpu_pinning_constraint'"

8 years agoMerge "tests: verify pci passthrough with numa"
Jenkins [Thu, 24 Nov 2016 18:38:43 +0000 (18:38 +0000)]
Merge "tests: verify pci passthrough with numa"

8 years agoMerge "tests: verify cpu pinning with prefer policy"
Jenkins [Thu, 24 Nov 2016 18:38:01 +0000 (18:38 +0000)]
Merge "tests: verify cpu pinning with prefer policy"

8 years agohardware: Flatten functions
Stephen Finucane [Thu, 29 Sep 2016 15:54:05 +0000 (16:54 +0100)]
hardware: Flatten functions

This will make subsquent changes easier to review.

Change-Id: Ia670e4d326613fe295d91bae45a379d700c33a5f

8 years agoMerge "Remove mox in tests/unit/objects/test_pci_device"
Jenkins [Thu, 24 Nov 2016 17:14:15 +0000 (17:14 +0000)]
Merge "Remove mox in tests/unit/objects/test_pci_device"

8 years agoMerge "Stop using mox from compute/test_multiple_create.py"
Jenkins [Thu, 24 Nov 2016 17:13:34 +0000 (17:13 +0000)]
Merge "Stop using mox from compute/test_multiple_create.py"

8 years agoMerge "Stop using mox stubs in test_snapshots.py"
Jenkins [Thu, 24 Nov 2016 17:12:54 +0000 (17:12 +0000)]
Merge "Stop using mox stubs in test_snapshots.py"

8 years agoMerge "Stop using mox stubs in nova/tests/unit/virt/disk"
Jenkins [Thu, 24 Nov 2016 17:08:47 +0000 (17:08 +0000)]
Merge "Stop using mox stubs in nova/tests/unit/virt/disk"

8 years agolinux_net: allow for creation of multiqueue taps
Roman Podoliaka [Tue, 1 Nov 2016 13:50:19 +0000 (15:50 +0200)]
linux_net: allow for creation of multiqueue taps

This is useful for e.g. enabling multiqueue support for vrouter: tap
devices created by Nova and then passed to libvirt must have
multiqueue enabled.

Implements blueprint vif-vrouter-multiqueue

Co-Authored-By: Michal Dubiel <md@semihalf.com>
Change-Id: I7170bf7c181b038bb3d70a3b86c87ee254d10efc

8 years agoMerge "Transform instance.finish_resize notifications"
Jenkins [Thu, 24 Nov 2016 11:12:16 +0000 (11:12 +0000)]
Merge "Transform instance.finish_resize notifications"

8 years agoMerge "Add context param to confirm_migration virt call"
Jenkins [Thu, 24 Nov 2016 10:51:47 +0000 (10:51 +0000)]
Merge "Add context param to confirm_migration virt call"

8 years agoMerge "Remove the description of compute_api_class option"
Jenkins [Thu, 24 Nov 2016 10:51:13 +0000 (10:51 +0000)]
Merge "Remove the description of compute_api_class option"

8 years agoMerge "Notification object version test depends on SCHEMA"
Jenkins [Thu, 24 Nov 2016 10:50:29 +0000 (10:50 +0000)]
Merge "Notification object version test depends on SCHEMA"

8 years agoMerge "doc: Add guidline about notification payload"
Jenkins [Thu, 24 Nov 2016 10:49:43 +0000 (10:49 +0000)]
Merge "doc: Add guidline about notification payload"

8 years agoMerge "Use pick_context_manager throughout DB APIs"
Jenkins [Thu, 24 Nov 2016 08:09:56 +0000 (08:09 +0000)]
Merge "Use pick_context_manager throughout DB APIs"

8 years agoMerge "Implement get and set aggregates in the placement API"
Jenkins [Thu, 24 Nov 2016 06:58:58 +0000 (06:58 +0000)]
Merge "Implement get and set aggregates in the placement API"

8 years agoMerge "INFO level logging should be useful in resource tracker"
Jenkins [Thu, 24 Nov 2016 03:41:07 +0000 (03:41 +0000)]
Merge "INFO level logging should be useful in resource tracker"

8 years agoMerge "Fix a typo in nova/api/openstack/compute/volumes.py"
Jenkins [Thu, 24 Nov 2016 03:21:56 +0000 (03:21 +0000)]
Merge "Fix a typo in nova/api/openstack/compute/volumes.py"

8 years agoMerge "Hyper-V: fix image handling when shared storage is being used"
Jenkins [Thu, 24 Nov 2016 02:14:54 +0000 (02:14 +0000)]
Merge "Hyper-V: fix image handling when shared storage is being used"

8 years agoMerge "[placement] increase gabbi coverage of handlers.resource_provider"
Jenkins [Wed, 23 Nov 2016 23:12:08 +0000 (23:12 +0000)]
Merge "[placement] increase gabbi coverage of handlers.resource_provider"

8 years agoMerge "[placement] increase gabbi coverage of handlers.inventory"
Jenkins [Wed, 23 Nov 2016 23:11:17 +0000 (23:11 +0000)]
Merge "[placement] increase gabbi coverage of handlers.inventory"

8 years agoMerge "[placement] increase gabbi coverage of handlers.allocation"
Jenkins [Wed, 23 Nov 2016 23:08:45 +0000 (23:08 +0000)]
Merge "[placement] increase gabbi coverage of handlers.allocation"

8 years agoPlacement api: Add informative message to 404 response.
Pushkar Umaranikar [Tue, 1 Nov 2016 21:49:19 +0000 (21:49 +0000)]
Placement api: Add informative message to 404 response.

Add informative messages to the 404 error response from
inventory.py and usage.py

This change also includes adding/altering existing Gabbi tests
for 404 response and add resonse_strings validation checks for
that.

Change-Id: Ica46a5479dec06b035f8b43d6738e9d124f6ae37
Related-Bug: #1634115

8 years agoRemove sata bus for virtuozzo hypervisor
Mikhail Feoktistov [Mon, 3 Oct 2016 15:07:50 +0000 (11:07 -0400)]
Remove sata bus for virtuozzo hypervisor

In virtuozzo 7 we have changed disk bus from sata to scsi.
Sata is not supported in virtuozzo 7.
We don't need to support sata bus for virtuozzo in nova.
Virtuozzo 6 may work with python 2.6 only and
it's not possible to run upstream nova on virtuozzo 6.
We always use this patch in our internal infrastructure
to run openstack on virtuozzo 7.
Also in this patch we have changed tests for hypervisor version.
We don't need to check libvirt version in case of Virtuozzo hypervisor.
Because Virtuozzo 7 always has libvirt with
support of 'parallels' virt type.

Docs have already been updated:

If3d2f402bb1b21bec360693a6c1e9d73e998d167

Change-Id: If3d5e39bd745c0df74316a90159fffb3221864cc

8 years agoFix a typo in nova/api/openstack/compute/volumes.py
Takashi NATSUME [Tue, 22 Nov 2016 06:21:17 +0000 (15:21 +0900)]
Fix a typo in nova/api/openstack/compute/volumes.py

he -> the

TrivialFix
Change-Id: I306867800fabbdf0b6516e2459c0d9d00d627c7b

8 years agoMerge "Return build_requests instead of instances"
Jenkins [Wed, 23 Nov 2016 20:40:24 +0000 (20:40 +0000)]
Merge "Return build_requests instead of instances"

8 years agolibvirt: Call host connection callbacks asynchronously
Matthew Booth [Thu, 3 Nov 2016 13:08:13 +0000 (13:08 +0000)]
libvirt: Call host connection callbacks asynchronously

Host.get_connection() does 2 types of job when initialising a new
connection:

1. Register event handling callbacks on the connection itself.
2. Call the _set_host_enabled in the driver to enable/disable the
   compute service.

The first is essential to run before the connection is used for
anything. The second needs only to run eventually once the connection
is established.

This patch creates a new helper thread which runs connection up/down
callbacks asynchronously to the caller. This means that the caller of
get_connection() returns as soon as the connection is usable, and the
driver callback happens concurrently. This is a minor improvement
currently, but will be more useful when we add additional work to the
connection up/down event. It also means that the callback runs without
holding _wrapped_conn_lock, which it doesn't need. This means the
callback itself can call get_connection() without deadlocking, and use
the connection which was just initialised.

In updating the callback logic, we also fix a minor bug: previously we
would not generate down/up events if we detected a failed connection
and succeeded creating a new one on the first attempt. This is
currently only of limited importance, as we are only marking the
service down or up for the scheduler, but could be more significant
when we add additional work to the callback.

Change-Id: Idf0f20d711f015e9f1331d5f65397aca2d67951a

8 years agoMerge "Add {get_,set_}aggregates to objects.ResourceProvider"
Jenkins [Wed, 23 Nov 2016 17:52:17 +0000 (17:52 +0000)]
Merge "Add {get_,set_}aggregates to objects.ResourceProvider"

8 years agoMerge "libvirt: do not return serial address if disabled on destination"
Jenkins [Wed, 23 Nov 2016 16:22:46 +0000 (16:22 +0000)]
Merge "libvirt: do not return serial address if disabled on destination"

8 years agoReturn build_requests instead of instances
Andrey Volkov [Tue, 20 Sep 2016 14:11:22 +0000 (17:11 +0300)]
Return build_requests instead of instances

This patch is preparation step to move the instance creation to
the conductor. The goal is to move out the instance.create call from
the _provision_instances method.

The _provision_instances method return value is changed
from list of instances to the tuple containing a list of build_requests
and RequestSpec object. We also return the instance_mapping list so
that we can properly clean up residue if we fail to create in the caller.

Co-Authored-By: Dan Smith <dansmith@redhat.com>
Implements: bp cells-scheduling-interaction
Change-Id: I60abcd4f27dc877c4e420071be77c9fdb697ad99

8 years agoMerge "Remove deprecated nova-all binary"
Jenkins [Wed, 23 Nov 2016 15:39:45 +0000 (15:39 +0000)]
Merge "Remove deprecated nova-all binary"

8 years agoMerge "conf: Attempt to resolve TODOs in scheduler.py"
Jenkins [Wed, 23 Nov 2016 15:39:10 +0000 (15:39 +0000)]
Merge "conf: Attempt to resolve TODOs in scheduler.py"

8 years agoMerge "conf: Remove 'scheduler_json_config_location'"
Jenkins [Wed, 23 Nov 2016 15:38:32 +0000 (15:38 +0000)]
Merge "conf: Remove 'scheduler_json_config_location'"

8 years agoMerge "Add is_cell0 helper method"
Jenkins [Wed, 23 Nov 2016 15:34:54 +0000 (15:34 +0000)]
Merge "Add is_cell0 helper method"

8 years agodoc: Add guidline about notification payload
Balazs Gibizer [Wed, 20 Apr 2016 15:07:36 +0000 (17:07 +0200)]
doc: Add guidline about notification payload

To help adding new notification to nova we shall have a guideline
what should and what should not be in the notification payload.

Change-Id: Ic85d304974bbfa7e02999ec3d6c9bba1d1aed3c8

8 years agoMerge "remove additional param"
Jenkins [Wed, 23 Nov 2016 07:35:45 +0000 (07:35 +0000)]
Merge "remove additional param"

8 years agoMerge "Remove redundant VersionedObject Fields"
Jenkins [Wed, 23 Nov 2016 07:16:48 +0000 (07:16 +0000)]
Merge "Remove redundant VersionedObject Fields"

8 years agoMerge "placement: adds ResourceClass.get_by_name()"
Jenkins [Wed, 23 Nov 2016 06:54:00 +0000 (06:54 +0000)]
Merge "placement: adds ResourceClass.get_by_name()"

8 years agoMerge "placement: adds ResourceClass.create()"
Jenkins [Wed, 23 Nov 2016 06:53:25 +0000 (06:53 +0000)]
Merge "placement: adds ResourceClass.create()"

8 years agoMerge "Transform instance.create.error notification"
Jenkins [Wed, 23 Nov 2016 05:19:08 +0000 (05:19 +0000)]
Merge "Transform instance.create.error notification"

8 years agoMerge "Transform instance.create notification"
Jenkins [Wed, 23 Nov 2016 05:18:40 +0000 (05:18 +0000)]
Merge "Transform instance.create notification"

8 years agoMerge "Add TODO for returning a 202 from the volume attach API"
Jenkins [Wed, 23 Nov 2016 04:56:01 +0000 (04:56 +0000)]
Merge "Add TODO for returning a 202 from the volume attach API"

8 years agoMerge "hyper-v: wait for neutron vif plug events"
Jenkins [Wed, 23 Nov 2016 04:00:11 +0000 (04:00 +0000)]
Merge "hyper-v: wait for neutron vif plug events"

8 years agoMerge "Refactor two nearly useless secgroup tests"
Jenkins [Wed, 23 Nov 2016 03:59:06 +0000 (03:59 +0000)]
Merge "Refactor two nearly useless secgroup tests"

8 years agoMerge "Add index on instances table across project_id and updated_at"
Jenkins [Wed, 23 Nov 2016 03:53:12 +0000 (03:53 +0000)]
Merge "Add index on instances table across project_id and updated_at"

8 years agoAdd TODO for returning a 202 from the volume attach API
Matt Riedemann [Wed, 23 Nov 2016 01:44:53 +0000 (20:44 -0500)]
Add TODO for returning a 202 from the volume attach API

Attaching a volume is an RPC cast from the API node to the
compute node, so we should return a 202 instead of a 200
in the response. Making that change would break Tempest though
which expects a 200 response code, and we have several other
APIs with similar response code issues:

http://paste.openstack.org/show/590154/

So this just adds a TODO for the same bucket of issues which
we'll probably need to handle in a single microversion.

Change-Id: I0bee2ea8681cc001dd490607213bc987ec70301f

8 years agoRefactor two nearly useless secgroup tests
Dan Smith [Thu, 3 Nov 2016 17:50:26 +0000 (10:50 -0700)]
Refactor two nearly useless secgroup tests

There are two tests that masquerade as "compute api tests" to
validate some instance security group associations. However, those
are just there because it's a convenient place to create instances
with a full complement of things. They depend on behaviors we're
about to move, and are also slated to be irrelevant when we remove
nova-network. In the meantime, move them closer to the other tests
for the bits they are exercising to get them out of the way of
the following patch.

Change-Id: I58f2d9d166446cd762a2fd4ad9d6b4bf5fff0c1d

8 years agoTransform instance.finish_resize notifications
Julian Sy [Wed, 19 Oct 2016 15:51:45 +0000 (15:51 +0000)]
Transform instance.finish_resize notifications

The instance.finish_resize.start and instance.finish_resize.end
notifications are transformed to the versioned framework.

Change-Id: I2ca79040a91368212fdf50593ef012a669a4a12a
Implements: bp versioned-notification-transformation-ocata

8 years agoRemove redundant VersionedObject Fields
Matt Riedemann [Tue, 22 Nov 2016 20:47:53 +0000 (15:47 -0500)]
Remove redundant VersionedObject Fields

This removes the NonNegativeInteger NonNegativeFloat and
IPV4AndV6Address Fields, since they already are defined in ovo.

implements bp json-schema-for-versioned-object

Depends-On: I083c854d0e1d18806169a1454e8127eda9e8ffb8

Change-Id: I61b7b6fa53013aff200e55b7031d5ba23669e1f4

8 years agoMerge "Store security groups in RequestSpec"
Jenkins [Tue, 22 Nov 2016 20:43:22 +0000 (20:43 +0000)]
Merge "Store security groups in RequestSpec"

8 years agoMerge "Remove unused code in nova/api/openstack/wsgi.py"
Jenkins [Tue, 22 Nov 2016 20:11:20 +0000 (20:11 +0000)]
Merge "Remove unused code in nova/api/openstack/wsgi.py"

8 years agoTransform instance.create.error notification
Gábor Antal [Tue, 15 Nov 2016 12:22:31 +0000 (13:22 +0100)]
Transform instance.create.error notification

Along with the transformation changes, I modified notify_about_instance_action
method so it can handle errors now. (It wraps the exception object into an
ExceptionPayload.)

Implements: bp versioned-notification-transformation-ocata

Change-Id: I171990290c8de529c9521a5ee556f97b18b741b0

8 years agoTransform instance.create notification
Gábor Antal [Mon, 10 Oct 2016 16:14:52 +0000 (18:14 +0200)]
Transform instance.create notification

We don't need image_name as an extra usage information, because
in the versioned notification, we have image_uuid which can be used
to get the name of the image from glance, if needed.

Change-Id: I1f3ea8d74a2e59049447c3045a293ce0babfb427
Implements: bp versioned-notification-transformation-ocata

8 years agolibvirt: prepare domain XML update for serial ports
Markus Zoeller [Tue, 22 Nov 2016 15:58:57 +0000 (16:58 +0100)]
libvirt: prepare domain XML update for serial ports

The serial console feature uses "ports" on a compute node to enable
a websocket connection. On a host, one port can only be used by one
single instance. If another instance gets live-migrated to that host,
an update of the ports in the domain XML is needed. Otherwise we will
get an exception from libvirt/qemu which states:

    Failed to bind socket: Cannot assign requested address

This change here *prepares* the update of the domain XML. Another change
is necessary which actually provides the ports to use for this update
function within the LibvirtLiveMigrateData object.

This change is a preparation for the fix of bug 1455252.

Co-Authored-By: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@redhat.com>
Change-Id: I531ec76bc82beaea89f3a94a72e8a75627a9aa23

8 years ago[placement] increase gabbi coverage of handlers.resource_provider
Chris Dent [Thu, 10 Nov 2016 18:50:09 +0000 (18:50 +0000)]
[placement] increase gabbi coverage of handlers.resource_provider

Cover a 409 that should happen when trying to delete a resource
provider for which there are allocations.

Change-Id: Id07c8dbc334aff94fd079de867f8db6256bc6973

8 years ago[placement] increase gabbi coverage of handlers.inventory
Chris Dent [Thu, 10 Nov 2016 18:29:42 +0000 (18:29 +0000)]
[placement] increase gabbi coverage of handlers.inventory

Test for correctly formed but invalid data when creating an Inventory.
This increases the coverage of the inventory handler from gabbi.

Race condition and ConcurrentUpdateDetected scenarios are not
covered as those are hard to cause from a gabbi test.

Change-Id: I603558c08d540aa53918252a0a9a050701456f5a

8 years ago[placement] increase gabbi coverage of handlers.allocation
Chris Dent [Thu, 10 Nov 2016 18:00:35 +0000 (18:00 +0000)]
[placement] increase gabbi coverage of handlers.allocation

A case where a non-existent resource provider in an allocation PUT
request could raise a 400 was not covered. Now it is.

This still leave a ConcurrentUpdateDetected exception (which can
lead to 409) not covered. There's no simple way to cause such a
thing from a gabbi test.

Change-Id: I98243b679ba8101663d459cb9a76f7015078aff7

8 years agolibvirt: do not return serial address if disabled on destination
Sahid Orentino Ferdjaoui [Mon, 14 Nov 2016 16:10:58 +0000 (11:10 -0500)]
libvirt: do not return serial address if disabled on destination

During live migration, the check on the destination host is returning
the address of serial proxy even if disabled. However, the absence of
this serial address is the signal the source node needs to know to
determine if the target node supports the serial console feature.
The absence of the serial_listen_addr is specified by the value None.
This makes it also necessary to *not* do a string conversion of None,
as this (maybe surprisingly) results in the string 'None'. The string
'None' however is *not* a valid serial_listen_addr value, as this
must be a valid IP address. The reason for this is, that this value
is used to update the domain XML of the libvirt guest.

This change is also a preparation for the fix of bug 1455252.

Co-Authored-By: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@redhat.com>
Change-Id: I01dc0424ea3cf5576ed9d2b49a7a3e458324fbe4

8 years agoMerge "Complete verification for os-floating-ips"
Jenkins [Tue, 22 Nov 2016 13:22:49 +0000 (13:22 +0000)]
Merge "Complete verification for os-floating-ips"

8 years agoMerge "Typo error about help libvirt.py"
Jenkins [Tue, 22 Nov 2016 13:15:42 +0000 (13:15 +0000)]
Merge "Typo error about help    libvirt.py"

8 years agoMerge "Remove mox from unit/virt/libvirt/test_imagebackend.py (1)"
Jenkins [Tue, 22 Nov 2016 08:39:53 +0000 (08:39 +0000)]
Merge "Remove mox from unit/virt/libvirt/test_imagebackend.py (1)"

8 years agoMerge "Use byte string or utf8 depending on python version for wsgi"
Jenkins [Tue, 22 Nov 2016 08:38:17 +0000 (08:38 +0000)]
Merge "Use byte string or utf8 depending on python version for wsgi"

8 years agoMerge "Add handle for 2 exceptions in force_delete"
Jenkins [Tue, 22 Nov 2016 08:37:40 +0000 (08:37 +0000)]
Merge "Add handle for 2 exceptions in force_delete"

8 years agoMerge "Typo error servers.py"
Jenkins [Tue, 22 Nov 2016 08:36:37 +0000 (08:36 +0000)]
Merge "Typo error servers.py"

8 years agoMerge "Typo error allocations.yaml"
Jenkins [Tue, 22 Nov 2016 07:47:09 +0000 (07:47 +0000)]
Merge "Typo error allocations.yaml"

8 years agoAdd index on instances table across project_id and updated_at
int32bit [Fri, 18 Nov 2016 16:08:12 +0000 (00:08 +0800)]
Add index on instances table across project_id and updated_at

We should have an index on the instances.updated_at table because
that's what's used to filter instances when using the --changes-since
filter parameter with nova list.

Closes-Bug: #1642729

Change-Id: I4c723839f36efddd95cd24d745fb71c96c75d2c1

8 years agoComplete verification for os-floating-ips
stewie925 [Tue, 14 Jun 2016 21:33:03 +0000 (14:33 -0700)]
Complete verification for os-floating-ips

This includes the parameter, example, and body
verification for os-floating-ips.

part of bp:api-ref-in-rst-ocata

Change-Id: I4beff34b41baf77827a2e4d916ad5319bdefbfa1

8 years agolibvirt: handle os-brick InvalidConnectorProtocol on init
Matt Riedemann [Tue, 8 Nov 2016 16:22:42 +0000 (11:22 -0500)]
libvirt: handle os-brick InvalidConnectorProtocol on init

On init the LibvirtDriver imports it's volume drivers into
a registry for later access during volume operations. Several
of the libvirt volume drivers are using os-brick for the connector.
os-brick can raise an exception when loading a connector class
under certain conditions, e.g. s390x + ISER is not a supported
mapping in os-brick. This in turn causes the LibvirtDriver to
fail to load which causes nova-compute to crash.

This change handles the os-brick specific InvalidConnectorProtocol
exception when importing volume drivers, logs a debug message but
doesn't fail to init the LibvirtDriver.

As part of this change the driver_dict_from_config helper method
is integrated with the _get_volume_drivers method as that was
the only thing using it, and it's cleaner if those are just a
single method.

Depends-On: I7183a479bc12c4e5509f52bf7fdd0fa7ccaa7247

Change-Id: I61376469a409dc5475886e6c79486b815129392a
Closes-Bug: #1639239

8 years agoplacement: adds ResourceClass.get_by_name()
Jay Pipes [Mon, 31 Oct 2016 12:58:38 +0000 (08:58 -0400)]
placement: adds ResourceClass.get_by_name()

The next patch in this series adds the ability to delete a custom
resource class. In order to implement that, we need a method to return a
single objects.ResourceClass object by string name. This patch adds that
method, implemented by using the resource class cache in a transparent
manner.

Change-Id: I92f84ed24518155a77f281057808750803c84889
blueprint: custom-resource-classes

8 years agoMerge "Refactor console checks in live migration process"
Jenkins [Mon, 21 Nov 2016 21:21:59 +0000 (21:21 +0000)]
Merge "Refactor console checks in live migration process"

8 years agoplacement: adds ResourceClass.create()
Jay Pipes [Fri, 14 Oct 2016 22:21:17 +0000 (18:21 -0400)]
placement: adds ResourceClass.create()

Adds in the implementation of objects.ResourceClass.create() with checks
that the custom resource class being added doesn't overlap with any
standard (or previously-added custom) resource classes. The
implementation uses a hard-coded number 10000 to mark the start of
custom resource class integer identifiers to make it easy to
differentiate custom resource classes. Note that we do NOT increment the
object version here because nothing as-yet calls the ResourceClass
object.

Also note that this patch adds a required "CUSTOM_" namespace prefix to
all custom resource classes. Followup patches will also place this
constraint into the JSONSchema for POST /resource_classes. The CUSTOM_
namespace is required in order to ensure that custom resource class
names never conflict with future standard resource class additions.

Change-Id: I4532031da19abaf87b1c2e30b5f70ff269c3ffc8
blueprint: custom-resource-classes

8 years agoUse byte string or utf8 depending on python version for wsgi
Juan Antonio Osorio Robles [Mon, 21 Nov 2016 16:43:21 +0000 (18:43 +0200)]
Use byte string or utf8 depending on python version for wsgi

A recent change to the wsgi code broke deployments running over
httpd/mod_wsgi. This is because for py2.X mod_wsgi accepts byte
strings and breaks with utf8. However, for py3.X, utf8 is
accepted. So this acts accordingly.

Change-Id: I81739bc3de9d623b718987b5fc18eaf851533902
Closes-Bug: #1643511