Ironic: Continue pagination when listing nodes

Ironic API supports pagination and limit the number of items returned
by the API based on a config option, by default a max of 1000 items is
returned per request. The Ironic client library by default respect that
limit, so when the Nova Ironic driver list the nodes it might hit that
limit and the wrong information will be passed to nova.

This patch fix the problem by passing a "limit=0" flag to the client
library to tell it to continue pagination until there're no more nodes
ot be returned.

Change-Id: I63795e2b4de828fa41e97812e99a714f04d2f580
Closes-Bug: #1367349
Remove duplicate index from model

Migration 249 dropped this duplicate index, but didn't update the model
to match what happened in the migration.

Change-Id: I3f63d31a0bb6f2652f49d8505cf0c02b090de89e
Fix order of arguments in assertEqual

Some tests used incorrect order assertEqual(observed, expected).

The correct order expected by testtools is
assertEqual(expected, observed).

Change-Id: I87f90b9fefbf39e92446d7724e7b8e457e114716
Partial-Bug: #1259292
Make v2.1 tests use wsgi_app_v21 and remove wsgi_app_v3

Nova v3 API has disappeared but some tests still access v3 URLs.
This patch makes them use wsgi_app_v21 and access to v2.1 URLs.
In addition, this patch removes wsgi_app_v3 because it is not
used after this change.

Partially implements blueprint v2-on-v3-api

Change-Id: Ic36d86dce8a35933c15ec820b273825bb0353864
Remove LOG outputs from v2.1 API layer

There are some debug/audit log messages about normal API operations
in each API method, but Nova WSGI framework has already output the
similar messages. So these messages are meaningless, and this patch
removes them.
This patch removes LOG outputs of InterfaceAttachFailed cases also,
because they are already output on driver layer(vmwareapi, libvirt)
and duplicated now.

Partially implements blueprint v2-on-v3-api

Change-Id: Ib645d1c320e6104bad34c2d7238db399e8d1ea42
Add API validation schema for floating_ip_dns

This patch adds validation json schema for the floating_ip_dns api.

Partially implements blueprint v2-on-v3-api

Change-Id: Iefb6a4503781fcc349cf5101d4ce10cc3422f52b
Fix the unittest use wrong controller for SecurityGroups V2

V2.1 and V2 API are sharing some set of unittest. But the unittest
for SecurityGroups V2 use the wrong controller. This patch fixes this.

Change-Id: I03cc6f3e4c1985fd961378d819c032f7a7c3d8ba
Network: manage neutron client better in allocate_for_instance

A neutron client only needs to be created twice in the aforementioned
method. The first time is for the tenant and the second, if necessary,
is for the admin. This is in the event that a port binding extension
is supported (only an admin user can read this).

In addition to this is a client exists then the method will make use
of it passing it to all internal methods called. This will enable them
to reuse that client instead of creating a new one.

Change-Id: Ia826199ea600ab55447ca4e8a78738c21b473efa
Closes-bug: #1377647
Compute: maint: adjust code to use instance object format

Update the code to use instance object format instead of dict format.

TrivialFix

Change-Id: I98814c5960f6fa83e3ace36039783ea36e39b3f9
fix the error log print in encryptor __init__.py

when attach an encrypted volume to vm, the error
log print is not right in encryptor __init__.py.
It will raise wrong exception info.

This change will fix the log print using correct
format.

Change-Id: Ibbe41e64ae6320efa53bdd97cdd5312457e65be7
Closes-bug: #1384531
xenapi: upload/download params consistency change

This patch updates the params for upload_image and download_image to be
consistent.

Change-Id: Ie6dbdb096624fb06a4fc29a461c3569e48df3ec0
Partial-Bug: 1380776
DB API: Pass columns_to_join to instance_get_active_by_window_joined

This makes the instance_get_active_by_window_joined database API
configurable for which columns should be joined from other tables,
similar to instance_get_all.

This lays the groundwork for the Instance object to pass expected_attrs
to the DB API for filtering which columns to load.

Partial-Bug: #1383469

Change-Id: I7089d732cbd06a854d47b7b9e4faf21b9ef498f1
Add API validation schema for disk_config

This patch adds API validation schema for disk_config.

This patch also modify TestServersExtensionSchema to load
disk_config extension so that update, rebuild & resize
extension schema loading can be verified.

Partially implements blueprint v2-on-v3-api

Change-Id: Ib687a8e4e8b173c32bcd19e396b23fbf2f3319c6
Merge "xenapi: upload/download params consistency change"
Merge "DB API: Pass columns_to_join to instance_get_active_by_window_joined"
Merge "Fix order of arguments in assertEqual"
Merge "Fix the unittest use wrong controller for SecurityGroups V2"
Merge "Make v2.1 tests use wsgi_app_v21 and remove wsgi_app_v3"
Merge "Add API validation schema for floating_ip_dns"
Merge "Add API validation schema for disk_config"