Update API document with BootDevice

This patch adds description about above BootDevice Web APIs.
* GET v1/nodes/(node_uuid)/management/boot_device
* GET v1/nodes/(node_uuid)/management/boot_device/supported
* PUT v1/nodes/(node_uuid)/management/boot_device

Change-Id: I2826e59332102b258b72e9850baa1a6b0d189f79
Fix unit tests with keystoneclient master

This patch in python-keystoneclient breaks unit tests in Ironic:
https://review.openstack.org/#/c/113712/

If admin_user is not passed to keystoneclient, an exception is
raised.

This patch overrides config for admin_user in Ironic's unit tests
to get around this behavior.

Closes-Bug: 1362280
Change-Id: I3a21e7c1b3a87ebee5a0e81f805f50919ef6a6d5
Updated from global requirements

Change-Id: I6e4171d5de1fdfaebdc32aca5d8cd30538711ce3
Merge "Update API document with BootDevice"
Script to migrate Nova BM data to Ironic

This adds the ironic-nova-bm-migrate script which can be used to migrate
node and interface data as well as associated configuration from a
nova-baremetal environment to Ironic.  It requires access to both databases
as well as the Nova configuration file.

Change-Id: I231730ad3e2cb289512c1f1166d4cef3358939f8
Co-authored-by: Adam Gandelman <adamg@ubuntu.com>
Merge "Fix unit tests with keystoneclient master"
Merge "Updated from global requirements"
Merge "Script to migrate Nova BM data to Ironic"
DRAC wsman_{enumerate, invoke}() to return an ElementTree object

Before the method Client.wsman_enumerate() from the DRAC driver was
returning a list of XMLs, this commit changes that behavior and instead
of returning a list it will now merge all the XMLs into one and return
the result ElementTree object to facilitate the manipulation of that
XML on the other end.

Related: blueprint drac-management-driver
Change-Id: I0e662794afe933ef57268aba975aec1fbed70846
Make DHCP provider pluggable

Previously, all dhcp was done explicitly through Neutron.  This commit
adds an interface for dhcp providers, currently implemented by a
Neutron provider and a noop provider.

The provider can be set in the dhcp_provider config option, and
defaults to neutron.

Co-Authored-By: Jim Rollenhagen <jim@jimrollenhagen.com>
Co-Authored-By: Lucas Alvares Gomes <lucasagomes@gmail.com>
Implements: blueprint support-external-dhcp
Closes-Bug: #1282168
Change-Id: I7eea490c573914c6cd2a73056fe3a0ec91065dc0
Merge "Make DHCP provider pluggable"
IloVirtualMediaIscsi deploy driver

This commit introduces a new deploy driver which uses iLO virtual
media to boot up proliant baremetal nodes, and uses iSCSI to deploy
the baremetal nodes.

Change-Id: I98f47ed6082a3a28fce3148f6d5177cdb5c61881
Implements: blueprint ironic-ilo-virtualmedia-driver