Refactor ensure-bridge for persistance

Updates ensure-bridge so that we use network-scripts and eni files
to configure persistent network configs using the distro provided
mechanism. See docs here:

http://git.openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob;f=rhel/README.RHEL;hb=HEAD
http://git.openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob;f=debian/openvswitch-switch.README.Debian;hb=HEAD

This resolves some problems with the previous approach affecting
lease renewal and machine reboots.

With the new approach:

- tmp config files are written to disk
- the real config files are overwritten if a change is detected
- ifup/ifdown commands are used to start/stop the network interfaces
  if a change has been made
- All of the ip, ovs-vsctl, etc. commands are handled by the distro
  scripts

One more important change is that ensure-bridge expects both
the EXTERNAL_BRIDGE and PHYSICAL_INTERFACE parameters. Previously
the script only required EXTERNAL_BRIDGE. We don't have a use case
for using ensure-bridge without a physical interface so I just made
both required since this made the implementation simpler.

Change-Id: Ib775598d3bdd6f1ccecb283f47d10b92aaf0bd35
Closes-bug: #1272969
Stop using all ports option w/ neutron-ovs-cleanup

Now that our OVS bridge network configs are persistent on reboot
we no longer need to do this to make DHCP work.

Running neutron-ovs-cleanup to cleanup just the neutron generated
ports on reboot is now sufficient.

Change-Id: I42d528b0f58a2ec394d4e01bb02bbf0974e2c3af
Prevent network interface logging w/ ovs agent

Openvswitch will create many network interfaces, especially when
supporting a nova compute node. We don't want any bugs in the underyling
OS tools to result in an explosion of network interface specific logs,
as we have seen that this can overwhelm upstart. This is mostly to be
defensive against future problems.

Change-Id: Id8310c5f24ea596ed2443bcb927a07b005980981
Add swift-get-nodes, swift-recon and swift-recon-cron

These tools are used used to monitor and diagnose issues with swift:
  o swift-get-nodes is used to find out the location where a
    particular account, container or object item is located within
    the swift cluster
  o swift-recon is used to retrieve various metrics and telemetry
    information about a cluster that has been collected by the swift-recon
    middleware
  o swift-recon-cron is configured as a cronjob and is used to
    track a servers async pending

This commit includes code to create the cronjob /etc/cron.d/swift-recon

Change-Id: Ia83c42c1a028508534c7ed774a27e30b498fc811
Update swift's selinux policies

Allow swift permission to /mnt/state/var/cache/swift.
Allow rsync to write to /mnt/state/var/log/rsyncd.log.

Move directory creation from post-configure.d to configure.d.

Change-Id: I9c8730be8d880229ec3224690f46406d55b2e8e1
Fixup testenv config for interface names.

Change-Id: I619a7a1b94535d46e3e2a40eeb82aabeb56b1957
RabbitMQ - Correct rabbit.users metadata sample

Additionally, we remove the no longer used heat_users template

Change-Id: Ib26cca827b72642e0884072b31c6caf96e29160b
RabbitMQ - Support clusters with more than 2 nodes

Change-Id: I0728c67779119a80c672e5e99c2d7d36ce0178f5
Move files common for mysql and mariadb under mysql-common

Because galera library path has to be set in mysql config file,
we create a symlink during install time to make sure that there is
always same path for mysql and mariadb and for all architectures.

Change-Id: Iea3264932ec621d3d7618c5c50cbe47a956fb332
Make innodb pool size configurable

Alows configuring of buffer pool size and decreases default
value to 100MB.

For VMs with 2G RAM is 592MB buffer too big. Then you can hit
an issue that openstack requests fail because there is not
enough memory to spawn new process or mysql server restart fails
for because it fails to allocate 592MB buffer.

Change-Id: I9126c090d3d4cd03cb93735a2b0c54fa250eed61
Factor out tgt-specific parts of cinder element

RHEL is only going to support the lio iscsi helper, so the tgt
parts of the element are not going to work there.  A subsequent
change will add a corresponding cinder-lio element to support that.

When this merges, the corresponding change to tripleo-incubator in
I1e33af0cb78fa9477bc5a0b9b89b06b907b81fae must merge as well to
prevent breakage of devtest.

Change-Id: Ic032204076adfa0d30b09423f2a46b587e07400d
Add cinder-lio element

Adds install steps needed for using cinder-lio and makes it
possible to configure the iscsi_helper option in cinder.conf

Change-Id: Ie741845b669621dd5cd481e9de22caea62312af2
Passthrough-enable nova.conf.

This permits passthrough settings to be applied to nova.conf using
'nova' as the key in the config. I'll do a bulk patch for this once
reviewers have had time to digest and talk about this.

blueprint: passthrough-config
Change-Id: I3bb935f16e8d742aa8acc50c52accbd033488f02
Merge "Passthrough-enable nova.conf."
Get the test env overcloud password from the correct place

This was in the current working directory from where devtest was run,
it has recently explicitly been given a home in TRIPLEO_ROOT.

Change-Id: I89c01345840fef770b3db493b477d5358d8c1237
Merge "Refactor ensure-bridge for persistance"
Merge "Factor out tgt-specific parts of cinder element"
Merge "Stop using all ports option w/ neutron-ovs-cleanup"
Merge "RabbitMQ - Correct rabbit.users metadata sample"
Wire in _EXTRA_INSTALL_OPTS...

Updates the various environment.d elements so that we can control
with a high level of granularity whether we enable
--system-site-packages in our virtualenvs. At a high level
OPENSTACK_EXTRA_INSTALL_OPTS can be set to -s to allow
os-svc-install to enable --system-site-packages globally.
The per element environment variables if set will override this
setting.

A step towards supporting both isolated and global venvs
for OpenStack elements installed from git source.

Change-Id: Ic3dc42717a90f02a58af345c5564336b64f930e4