devstack (stack.sh) fails when extra config files are specified

Latest merge of https://review.openstack.org/#/c/71996/ exposes an issue
in stack.sh which did not surface before.

Please see the details of the issue in the bug description.

Closes bug: 1285884

Change-Id: Ie231c9835497c2a418a61d339dfd5df1aab9e3d7
Remove bm_poseur, unmaintained and obsolete

The bm_poseur git repository link has been broken
for over 11 months. The virtualized/fake baremetal
environment is not working and has not worked in a
long time. Now, on the tail of enabling 'enable -o errexit',
this functionality now has a hard break.

Change-Id: I3cbd8db58c422bc5273d2433278aaa5e449ecfd9
Closes-Bug: 1285954
Add configurations for the OpenFlow Agent mechanism driver

This patch supports configurations for an environment of the OpenFlow Agent mechanism driver
Set the following variables in a localrc to be ran this mechanism driver.

Q_ML2_PLUGIN_MECHANISM_DRIVERS=ofagent
Q_AGENT=ofagent

Implements: blueprint ryu-ml2-driver
Change-Id: I774da9a26f241487dfa4ec124b12f528704d860b
Fix pep8 errors

This commit fixes pep8 errors.

Change-Id: Ia1f1d61081a86b8a58251918392171cbc60f5ab8
Fix intermittent error in exercises/floating_ips.sh

Every once in a while I see this error running floating_ips.sh:

/devstack/exercises/floating_ips.sh:184:ping_check
/devstack/functions:356:_ping_check_neutron
/devstack/lib/neutron:904:die
[ERROR] /devstack/lib/neutron:904 [Fail] Could ping server

I think the problem is that it immediately tries to ping right
after the icmp rule is deleted.  Add a timeout and check so we
at least wait one second.

Change-Id: I753ec257fa12f6d2ddff1a5b1909e32d8995e173
Move heat keystone setup into lib/heat

Move the heat setup which currently happens in files/keystone_data.sh
to lib/heat, where we have create_heat_accounts.

Move the user, role, service and endpoint creation as that is consistent
with what other services, e.g lib/nova are doing.

Change-Id: Iaa2c822cad581d6b2b4f22f8863daf81e25f8485
Add heat_stack_owner role for heat trusts usage

Heat supports deferred operations via keystone trusts,
and we'd like to make that the default.  To do this, we
require a new role, which is the default role specified
in heat.conf trusts_delegated_roles, heat_stack_owner.

Add the role to the admin/demo users so they can create
heat stacks when we make deferred_auth_method=trusts the
default.

Change-Id: Idfc70ee89428c23f5965e643486ff2ad9566471c
Related-Bug: #1286157
NCCLIENT_REPO is using the wrong url

NCCLIENT_REPO value in lib/neutron_plugins/cisco is pointing to a repo
that does not exist. This fix corrects the url.

Closes-Bug #1286302

Change-Id: I42db0b3f7a4bbf5d1d053e3da8b4fbb67d47de94
Merge "Remove bm_poseur, unmaintained and obsolete"
Merge "Add configurations for the OpenFlow Agent mechanism driver"
Merge "devstack (stack.sh) fails when extra config files are specified"
Put tempest ipv6 option in the correct group

This commit updates the location for the ipv6 option to be in the
proper group. This depends on tempest change
I35769cf4d18363fad56ed5150b4d01d8a5ad17e7

Change-Id: Ief5ea00649c8954282245e30c63c45557a28ea9f
Fix upload function for vmdk files

Fix all grep statements failing under -o errexit.

Change-Id: I0591a2ba7351d598eb5b29d68a83ce6290600938
Merge "Fix pep8 errors"
fix tgt to use 'service' instead of upstart calls

the comments in here were largely about oneric, which we don't
support any more. service is installed in a precise environment,
and will support debian and the upcoming transition to systemd
better, so use that instead.

Change-Id: If15493549a8c93a7387df9b3bba31443aed46995
Fix typo in ironic configure function

IRONIC_CONF should be replaced by IRONIC_CONF_FILE

Change-Id: Ie43e376f42f14c46d21df7dbb19db923521f438b
Use cat instead of read<file

When reading a file, it is expected that
the read process will exit 1 as this is
expected whenever the input reaches an EOF.

Because it is not clear if the 'exit 1' is
from a successful read or a more serious error,
and as this edge-case of 'read' is not well-known,
we instead change this code to read the file using
'cat'.

The new code is moved into a function, is_docker_running.

Furthermore, we now quote the variables and check
for the existance of the pid file for better and safer
error handling.

Change-Id: Idb56b87349a5a84d5d255715cfb7191341363118
Closes-Bug: 1286441
Merge "Fix upload function for vmdk files"
fix typo in lib/ceilometer

this should be is_service_enabled and not service_enabled. Not
sure why it passes in the gate, but it fails in stackforge jobs.

Change-Id: I876f72cd98ff9c8e4ea28832bc9ac6bbdc3b865d
Merge "fix tgt to use 'service' instead of upstart calls"