Move mysql_engine option to [database] group

We can not move the remaining db-related options to the [database] group
because they are defined in oslo-incubator.

sqlalchemy/models.py incorrectly sets options as default.
That's why we need to move mysql_engine to [database] group

Fixes: bug #1193499

Change-Id: Ic485fb28279e5ceeed6e21b4dee2a37a9eea6d6c
Sync install_venv_common from oslo

The current version of install_venv_common uses the --distribute flag
in its creation of the virtualenv. This causes some upgrade problems
with the new versions of distribute and setuptools. The solution to
those problems is to get off of the distribute bandwagon.

Change-Id: Ie3de2504fe08f751dbf3f06e4973716a51d7e25b
Merge "Sync install_venv_common from oslo"
Remove suds requirement

There are no uses of suds in this module, and
suds is meanwhile unmaintained and has pending
security issues, so better remove references to it.

Change-Id: I532f597724ccdff91769e167342545d0b53c54ef
Add dbapi functions

1. add get_nodes_by_chassis
2. add chassis_list
3. add tests for new dbapi function
4. remove object created in setUp function in test

We need chassis_list when we get /chassis,
and we need get_nodes_by_chassis when we get /chassis/chassis_id/nodes.

I remove object created in setUp function because the object created in
setUp function will always exist in the db util test is over, so the
result of test_chassis_list will be effected by the object created in
setUp.

Change-Id: Ic2a743b764761935f847de0e0cdb0a2ebcec2486
Update resource manager for fixed stevedore issue

Stevedore commit 69e17801a3f0cf37257069da7dc83e2608f31aa5 fixed a
known issue in conductor.resource_manager.

This patch updates the Ironic code to use stevedore's new accessor.

Change-Id: I0f57831a70368afb5ea321c0e607f762d464c2a0
Modify gitignore to ignore sqlite

Prevent generated sqlite files from being imported.

Change-Id: I76a94a948559d40ee80a10fc2ac8ad45138bac9b
Implement port api action

Jobs have done in this patch
1. API to retrieve list of ports: Done
2. API to retrieve details of a single port: Done
3. API to create (insert) a new port: Done
4. API to update an existing port: Done
5. API and RPC to delete an existing port: Done
6. DB API of get_port_list and tests

Change-Id: Idd8c4ab9bc9e1eac2c0c93dfa699c81070f5fbe8
Add helpers for single-node tasks.

Add two @properties to help facilitate use of single-node tasks,
and update docs accordingly.

While tasks should support multi-node operations, right now, most code
paths are fairly simple and only operating on a single node at a time.
The task.node and task.driver properties will make things DRYer.

Change-Id: Iff9202af623b1cdd25f6bc73bba679e47fa13a81
Change validate() to raise instead of returning T/F

Robert was right - it's better to allow driver.interface.validate to
raise an exception, and let that bubble up and be wrapped by the API, or
logged, than to wrap it at a low level and convert to True/False.

This patch changes the existing drivers' validate methods to remove
the exception wrapping, and updates some doc strings.

Change-Id: I02372db64ea0eb85a3c0a00de292c87d286808e1
Merge "Add helpers for single-node tasks."
Merge "Change validate() to raise instead of returning T/F"
Merge "Implement port api action"
Move glance image service client from nova and cinder into ironic.

Most of the code was present on nova.image.glance and cincer.image.glance.

Should be removed once common code lands on python-glanceclient.

Change-Id: Ia7deb1a79c388333410b6abc24736481d435de77
Implements: blueprint image-tools
Porting nova pxe driver to ironic.

Implements: blueprint equivalent-pxe-driver

Change-Id: I59cf6e10ff00b3787e2bd60082ca872348157ec8