Allow Ironic URL from config file

Currently when using username/password auth from configs with
ironic client, it's not possible to specify the ironic URL in
a config file. This commit makes that possible.

Change-Id: Ib99c48c2f80abaf42b08f36af942535d7c9ac5d1
Add method for deallocating networks on reschedule

Per nova baremetal commit d3854f2c05502c7407d716da7d1bd7f1ca3e0a15
we should now return True from the deallocate_networks_on_reschedule
Nova compute Ironic driver.

Change-Id: I54a3252ab15e2d8b596ccc90eb4755405021f1da
Make swift tempurl key secret

This prevents the key from being printed out to logs when e.g.
`log_opt_values` is called.

Change-Id: I7c7f8987a467476f4d56fa76c6a35c88561d6858
Use auth_token from keystonemiddleware

auth_token middleware in python-keystoneclient is deprecated and has
been moved to the keystonemiddleware repo.

This patch updates Ironic to use the new keystonemiddleware package.

Change-Id: Ifb48996867f9f51c4dbedde0e0d9476c2d2818b4
Closes-Bug: #1342274
Imported Translations from Transifex

Change-Id: I894325f530ddad6e956ccf0160233875bbc0ed45
Merge "Add method for deallocating networks on reschedule"
Merge "Make swift tempurl key secret"
Merge "Use auth_token from keystonemiddleware"
Import fixes from the Nova driver reviews

Import fixes from the Nova driver review, based upon revision 4
of https://review.openstack.org/#/c/111423/

- Add unittests for patcher.create()
- Convert some of the tests for the PXEDriverFields to GenericDriverFields
  and make sure that the delta from the PXE class is covered

Change-Id: Iec8d1d379458b89a2140dc473ad691dc5dd6d3dc
Raise MissingParameterValue instead of Invalid

There are several functions that were raising InvalidParameterValue,
when it should be a MissingParamenteValue. This way we can differentiate
both exceptions when needed.

Change-Id: Ia5ce05e30b3fb00261854857aeef46238a8b00f8
Merge "Imported Translations from Transifex"
Merge "Import fixes from the Nova driver reviews"
Driver merge review comments from 111425-2-3

This review contain fixes that addresses the review comments
raised in https://review.openstack.org/#/c/111425 revisions 2 & 3.
Once these changes are merged here in Ironic, they will be
proposed as updates to the patch series over in Nova.

Change-Id: Ie7bc50a9804373c9c4f8850f4e2b201c1d01effb
Mechanism to cleanup all ImageCaches

This commit moves the cleanup code of ImageCache to a
common place in image_cache.py so that it can be accessed
from anywhere in the ironic source tree outside pxe driver.

It also introduces a new decorator @image_cache.cleanup()
for subclasses of ImageCache which wishes to be cleaned up.
This also has provision for providing a priority for the order
of cleanup.

Implements: blueprint cleanup-all-imagecaches
Change-Id: Idb54cee6cc1eee4f52ff07f8ca6e1f83378b2296
Raise MissingParameterValue when validating glance info

Make use of the MissigParameterValue exception when validating the
image info from glance.

Change-Id: Ic403ef47586922ef12c111aa191b0b181028d60d
Add list() to Chassis, Node, Port objects

What it says and remove the direct calls to dbapi and switch code to
use the object interfaces.

Partial-Bug: 1314732
Change-Id: I250d7c82cc4d048b60e5f360aca26f593f77b04a
Merge "Raise MissingParameterValue instead of Invalid"
Merge "Mechanism to cleanup all ImageCaches"
Remove objectify decorator from dbapi.update_* methods

This patch removes the objectify decorator from the update_chassis,
update_port and update_node dbapi's methods. The problem with the
objectify decorator is that dbapi methods doesn't get the context,
so when forming the RPC object using the decorator we can't store the
context within the object (which is what we want to do to have consistent
object interfaces).

Also there are no parts of the code that is expecting the returned RPC
object from the dbapi.update_*() methods so we can just simply get ride
of the decorator.

Partial-Bug: 1314732
Change-Id: Ib5ac15100214b351607e1c17aa663fa4c123bc7a
Merge "Add list() to Chassis, Node, Port objects"