The database related functional tests would not work. Several
changes were required to fix them:
* Clean up permissions in function post_test_hook
Without this tox can't create its .tox directories. We want to be
running as user stack against a directory owned by user stack.
We need to check for a directory named 'devstack' not a file in
order to get the permissions changes to happen.
* Call pg_ctl initdb, not initdb to create the postgresql database.
* Add a DRIVER_MANAGER for mysql+pymysql (without this all mysql
tests are skipped, even in the unit tests).
* Change get_connection so it doesn't split on + when looking up
storage extensions, as we do want to use pymysql.
* Make sure AODH_BACKEND is set and exported in gate_hook.sh
* Mysql requires a database exist when we name it in a sql
create_engine, replace the placeholder with '' when in mysql.
* Move keystonemiddleware config to the correct section of the paste
file, temporarily.
Change-Id: I001e34e28353a35148e2101ab90cb3d238bd53cb