Fix file permissions on examples/neutron.pp

The examples/neutron.pp file had mode 755 when it should have 644.

Change-Id: Ic5c5483cf616547deecf63ec9fa725b8c9ff4794
Merge "Fix file permissions on examples/neutron.pp"
params.pp: Rename client_package_name to client_package, and correctly define it

Leaving this unset leads to problematic consequences if another
module does the same, as both would alias the package to nil.

node bob {
  include heat::client
  include neutron::client
}

Error: Could not retrieve catalog from remote server: Error 400 on
SERVER: Puppet::Parser::AST::Resource failed with error ArgumentError:
Cannot alias Package[python-neutronclient] to [nil] at
/etc/puppet/modules/neutron/manifests/client.pp:20; resource
["Package", nil] already declared at
/etc/puppet/modules/heat/manifests/client.pp:17 at
/etc/puppet/modules/neutron/manifests/client.pp:20 on node bob
Warning: Not using cache on failed catalog Error: Could not retrieve
catalog; skipping run

Companion change in puppet-heat: Ib0ae86d7ff406039f4b361a65c2e092d2a321a77

Change-Id: I63266ca8faa807b8aef051b319a06fa323757ceb
Merge "params.pp: Rename client_package_name to client_package, and correctly define it"
Ensure keystone endpoint set before service starts

As neutron-server is mostly useless without having the keystone
service+endpoint set, in the case where both keystone and
neutron-server are on the same machine, this patch adds a soft
dependency to ensure that the keystone catalog includes neutron

This has a knock on effect of fixing openstack::provisioner, which
would sometimes try to create neutron networks, the type for which
soft depends on neutron-server, without there being an endpoint
set in the keystone catalog

Change-Id: I658e1b3e2c448b9a7da9e013c4e105b9ec824893
Adds Database Configuration Support for Havana

Previously, database configuration information was stored in the
plugin .ini file.  As of Havana, a [database] section has been
created in neutron.conf to manage the database configuation for
all Neutron plugins:

https://github.com/openstack/neutron/blob/stable/havana/etc/neutron.conf#L315

Additionaly, several database flags have changed from Grizzly to
Havana.  For backwards compatibility, the previously supported
database flags are contained in neutron::server with a default
of false.

Change-Id: I300fc12092bca1abdd105e0c0c272f7fd49258ac
Preparing for 3.0.0 Havana release

Updated Modulefile with current version.
Updated README.md release notes.
Updated fixtures.yml to point to stable/havana branch.

Change-Id: I3394bae36d3fa8ca858f0e5922cc257e9900f47f
Rename device_driver in neutron::agents::lbaas

Since the havana release, the device_driver parameter for the HAProxy reference
implementation has been changed to
'neutron.services.loadbalancer.drivers.haproxy.namespace_driver.HaproxyNSDriver'.

Upstream reference:

https://github.com/openstack/neutron/commit/358975281f7d9ef43f16febaf27f8f5d1d568426

Do not backport this change into grizzly.

Change-Id: I22369e4875377fe7ac2aa6dd8ea80e04758acbed
Merge "Rename device_driver in neutron::agents::lbaas" into stable/havana
Add ML2 plugin support

This patch aims to support:
- ml2 configuration for Open-vSwitch & Linux Bridge plugins
- mechanism drivers: flat, gre, vlan vxlan
- l2 population support for OVS & linux bridge plugins

implement blueprint ml2-support
Cherry-picked from https://review.openstack.org/#/c/48289/

Change-Id: I9a4224f899e95411c509f583bf04dfc4dd0de25b
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Add missing vpnaas class in example manifest

examples/neutron was missing neutron::agents::vpnaas which is useful
for people wanting to write manifests based on puppet-neutron module.

Change-Id: I374c4315472d46397c1cc2152bd35e1cdfd7336a
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
(cherry picked from commit 37d1c5b81087d241a26a6ee84278fb0b9bf1eabe)
Add metering agent support

The Ceilometer project is able to get meters from Neutron via the
notifications system on how much bandwidth the projects are using.
The idea is to meter this as the L3 routers levels.

The feature exists since Havana.

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
implement blueprint metering-agent

Change-Id: I62ad9b7455e5f2bc3455b55a346f2515ca1040a3
(cherry picked from commit bf34f8631cfae0550dbe082740668df82f0cdfd4)
Add multi-worker support

Since https://review.openstack.org/#/c/37131/ got merged, Neutron
supports now multiple worker processes for API server.

Change-Id: Ib01240c39de21306892f4f92e0ba3ecb56837a7c
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
(cherry picked from commit 64c452b4fb8b955639bc57b483f619224a23be83)
Backport to havana: https://review.openstack.org/#/c/60082/
Ensure_resource on dnsmasq package

As dnsmasq is sometimes required by other modules,
in particular ones that are not in puppet-openstack,
this can cause duplicate declaration issues. By
using ensure_resource, we can avoid these problems
and both modules can declare the package.

Backport of I32f29bcac3cf67a2644b3e5eb50621f8e27b1cb1

Change-Id: Id7c66c20b62890df51c37f608087234a5b470eae
Use ensure_packages with dnsmasq package resource

Use ensure_packages with the dnsmasq package resource to allow
coexistance with other modules which define the same resource
name (puppet-cobbler, for example).

Cherry-pick from review.openstack.org/#/c/61737/

Change-Id: I4fb081f822596f2f025f952525d5333c5a5b1364
Update for 3.0.0-rc2

Updated .gitreview to point to stable/havana. Updated changelog
in README.md. Updated modulefile release number.

Change-Id: I3084bd66000ae8d69ac2d1f861c3dd983e2581f0
Release 3.0.0

Updated Modulefile for release 3.0.0

Change-Id: Ie064b8d1de327b68592e1ac443d7259772df47f6
VXLAN support

This patch is implementing support for VXLAN tunnel
type for OVS plugin.

Refactored neutron::plugins::ml2::validate_* to functions
so they can be used in other manifests in module.

Change-Id: Ic51ed794b27069809a151dc365ca108c8300c277
(cherry picked from commit 766561df83ea414ccf82423414863f30c6ce0761)
Configure security group when using ML2 plugin

Since the ML2 plugin can concurrently support different L2 agents (or
other mechanisms) with different configurations, Neutron developpers recommend
setting firewall_driver flag in ml2 configuration.

Change-Id: I62d0d1b2aac88a11e5f3e80e98953c71cfc98629
Closes-bug: #1262678
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
(cherry picked from commit 59cf3eb0a22c220509ec80c345bbf064f85374ad)
Merge "Release 3.0.0" into stable/havana