Add support to linuxbridge manifests for Red Hat distros

This mirrors the change that was done for the OVS plugin/agent.
In addition, defaults for sql_connection and network_vlan_ranges
that mirror the ones for the OVS plugin were added.

Change-Id: I56c6373215bb3940c870f5921c70b197b4fe74f1
Add LBaaS Support

Since OpenStack Quantum has a LBaaS agent in Grizzly release,
this patch install and configure it with the default driver : HAproxy.

Change-Id: I68af63c33f6f5cd712a66dc747d3da8d01222aeb
Lookup tenant id via keystone_tenant.instances

 * Previously tenant_id was being looked up via the catalog,
   but that precludes the tenant being created in the same run
   as the quantum resource.  Using instances ensures that the id
   can always be looked up by the name.

Change-Id: I038edc10e38c4edacb4f40c446bf75156b2af882
Add quantum_l3_ovs_bridge custom type.

 * The type and associated provider manages whether the gateway ip
   of a subnet is configured on a target ovs bridge.

Change-Id: I7622dcc1e396a1ab0608a4f4fda610a7cf08e6fa
Merge "Lookup tenant id via keystone_tenant.instances"
Merge "Add quantum_l3_ovs_bridge custom type."
Merge "Add support to linuxbridge manifests for Red Hat distros"
Remove native type prefetches

The network, router, subnet and router interface
providers attempt to prefetch the configuration,
which can result in empty or stale values being
loaded as quantum configuration. The former will
result in errors stating the quantum.conf file
is incomplete, while the latter will often
result in authentication errors.

This patch removes the prefetching in the child
classes and explicitly sets the conf to nil in
the parent quantum provider so that it will be
loaded at the correct time.

Change-Id: Ia2dbc8b687498be96d09c9286fb3f07e0c5b8f96
bug 1197588
Revert "Remove native type prefetches"

This reverts commit 894e1871e69b00985688b536667e12907cbaa035.

Change-Id: I15d91e04d15e072658eaf3c2bb70b631f6833684
Minor cleanup for the quantum_l3_ovs_bridge provider.

 * Use each() instead of collect() when iterating in
   bridge_ip_addresses.
 * Update the property_hash's value for ensure when the resource
   is created or destroyed.

Change-Id: Ib62c74c7a9ba38bdd57b263eeee94f370611b8b9
Default to using the catalog for tenant lookup.

 * Only if the tenant cannot be found in the catalog will instances
   be used.
 * Replaced the get_tenant_id method in the providers with an inline
   call since it is only needed for create()

Change-Id: I1bb4b6d9998f9d334df10bf9b1f683c4f2f38150
Fix parsing of resource creation output.

 * The results of resource creation were previously not being
   parsed at all, so that new instances would not have their
   property_hash properly populated.  This change ensures
   correct property_hash population.
 * Stop using an instance variable when a local variable (attrs)
   with do.

Change-Id: I88fe3ba964839762d5ad6a431d3d9ab876266fe9
Remove extension checks for quantum_network.

 * The extension checks were failing if /etc/quantum/quantum.conf
   did not yet exist, which could easily be the case if quantum
   installation was attempted during the same run as provisioning.
   Since the checks are pointless anyway - the provider and l3
   extensions are essential parts of the quantum api - this change
   removes them.

Change-Id: I872d56b29ee4de8fefcd1e8ee0c0666cacccb533
Remove property features from quantum_network

In a previously merged commit: 36144 , the feature implementation
of the quantum_network provider was removed b/c it was determined
to be faulty.

This commit removes the usage of features from the type, so that
properties that depend on those features can still be used.

Change-Id: I32e36d8c1b803dda1dcea5f6ee47a64d1d09d3b8
Remove unused feature def from quantum_network.

 * Completes the work of the last 2 commits.

Change-Id: Ia10deed01bbed6f5ba8481688ce16b7ffe4e90d0
Remove Unnecessary mysql::server Dependency

Previously, the db::mysql class required mysql::server.  This is
unnecessary since the mysql::db define requires the mysql::config
class for db creattion.  Additionally, this prevents users from
using a different class such as galera::server to manage
the database.

Change-Id: Ief246d868bcee0f6d1eabd873ad90dac56aa1ee6
Support Cisco quantum plugin

This patch adds native types for the config files
needed to enable the cisco quantum plugin as well
as a class that will create these config files.

Users will be able to select their plugin
of choice by setting the core_plugin on the
openstack::controller, and then creating
the quantum::plugins::cisco class separately.

Change-Id: I8c131ebdbab149f589c84e52be8f810e39624941
Merge "Support Cisco quantum plugin"
documentation Updated README.md for module release

Updated the README.md documentation in anticipation
of the puppet-quantum 2.0 release (Grizzly). Matched
style to other modules, added a short example, and
included links to further documentation and resources.

* Added example code to enable quantum networking in nova.
* Included a list of other quantum network drivers of
interest.
* Updated contributors to point to the latest github
graph.
* Trailing whitespace removed.
* Added cisco-quantum to documentation
* backticks around inline source

Change-Id: Ice968a719541c8e3a8924647690a99ef6d304378
Pin mysql to major version for fixtures

Previously, unit tests were using master for testing.

This commit changes them to use the newly created major version
branches. This allows us to backport bug fixes while we wait for
upstream to stabilize.

Change-Id: If7bfcc760f77a93163b17da8382bdd63ccc8850f