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
Nova ironic driver review update requests to p4

In https://review.openstack.org/#/c/111425/7/nova/tests/virt/...
...ironic/test_driver.py it was requested to change the way API
testing was conducted.  In doing this, some slight alterations
have been needed to ensure conformity.

Change-Id: Ia2905e4a8a27ff196198e35d04d0570065d2779d
handle invalid seamicro_api_version

If the value for seamicro_api_version is invalid, seamicro raises
an exception. Instead of the seamicro exception, this patch raises
an InvalidParameterValue exception instead.

Change-Id: I2526304e8aedbf2c2822296e3963462ce980d466
Partial-Bug: #1267693
Update nova driver's power_off() parameters

The nova driver's power_off() function received two new parameters
in commit c07ed15415c0ec3c5862f437f440632eff1e94df (nova).  The
in-tree drivers were all updated.  This updates the Ironic driver
and avoids a traceback during power off.

Change-Id: I0cbe7d954f0bcc16f7249304321a08d457eaba52
Closes-bug: #1359943
Set ssh_virt_type to vmware

Tests for set_boot_device and get_boot_device were incorrectly setting
the ssh_virt_type to vmware, so that it didn't get changed from the
original vbox value. This fixes it.

Change-Id: I66087ddd258852b6c36f5972deae8bde24c69572
Closes-Bug: #1360015
Add driver name on driver load exception

When non-DriverLoadError exception occurs during driver loading, it is
reraised, providing no information about driver that caused it. In this
patch such exceptions are wrapped in DriverLoadError with driver name
provided and reraised if driver is enabled.

Closes-bug: #1352443
Change-Id: I203618f1c88b940b0122dd1dc204df6325e5e54c
Add management interface for agent drivers

This commit adds management interface for the agent drivers
AgentAndIPMIToolDriver and AgentAndIPMINativeDriver, which is
required for setting boot device.

Change-Id: I90a9277357e490761567b76e13ca33da65ba476d
Closes-Bug: #1360224
Merge "Nova ironic driver review update requests to p4"
Merge "Update nova driver's power_off() parameters"
Add iPXE Installation Guide documentation

Implements: blueprint ipxe-boot
Change-Id: I0b4a14da360225626910429f827399ec6a1a7ada
Merge "Add iPXE Installation Guide documentation"
Set PYTHONHASHSEED for venv tox environment

We're seeing frequent failures of the docs Jenkins job that appear
to be caused by the tox 1.7.2 upgrade and the migration to using
PYTHONHASHSEED=random.  This overrides the environment in the venv
testenv to set PYTHONHASHSEED=0 and allows docs to build
successfully.  Note that we want to run our tests with a random seed
if possible, so this avoids disabling it for the base testenv and
only uses non-random for the testenv used by Jenkins for doc builds.

Change-Id: I665703c9a002500bc90b90cd268bd3ccff4e3534
Closes-bug: 1361295
Merge "Set ssh_virt_type to vmware"
Merge "Set PYTHONHASHSEED for venv tox environment"
Merge "Add driver name on driver load exception"
Merge "Take iSCSI deploy out of pxe driver"
Merge "handle invalid seamicro_api_version"
Merge "Add management interface for agent drivers"
Add support for creating vfat and iso images

This commit introduces support for creating vfat images
and iso images in ironic. Vfat images will be used for
passing information to baremetal node using virtual
media through OOB channel. Iso images will be used for
booting up baremetal nodes via virtual media.

Change-Id: I42b88da02090aec310f567642d3174d0f482b585
Implements: blueprint ironic-ilo-virtualmedia-driver
Merge "Add support for creating vfat and iso images"