This change updates the values in main classes that are currently set to
the same values as in default configuration files to $::os_service_default fact
Change-Id: I5279cfd72192534a5ffcfdaf71b257b082a8b42c
Related-bug: #1515273
Quality of Service advanced service is a feature introduced in Liberty.
This patch adds options required for this service deployment:
- ml2-ovs extensions (to use qos extension)
- ml2-sriov extensions (to use qos extension)
- ml2 plugin extension_drivers (to use qos extension driver)
- qos notification drivers
Change-Id: Iefc289a6eee13b9c66f8131c258af982f232df4b
When db-sync is run, only services that that talk to the database need
to be restarted. This introduces a new tag for that type of services
(neturon-db-sync-service). Currently only neutron-server talks to mysql
directly, so it is the only service with this tag applied.
Change-Id: I0ac15865b408fe9acb643e800836da8b3eeb7827
In order to be able to take an action after all the packages of the
module have been installed/updated or all the services have been
started/restarted, we set a 'neutron-package' and 'neutron-service'
tag for each package and service of this module.
At the moment, there is a generic openstack tag that is not specific
enough if one wants to take action upon a single module change.
Use case :
If an action needs to be taken after all the packages have been
installed or updated : Package <| tag == 'neutron-package' |> -> X
Change-Id: I63ac9b1d806565eb1847ed0e36d393c6c7ea98ad
In order to standardize the way dbsync are run across our modules,
we create a new class neutron::db::sync.
This class will be included if sync_db is enabled.
By making this transition the neutron::db::sync class
can be returned by the ENC.
A use case would be in an highly available environment with 3 galera
nodes, include neutron::server on every node with sync_db set to false
and have the ENC return ceilometer::db::sync just for one node.
Change-Id: I81e824e3e9e8f901b2a0084c7a5ec42c53781864
This commit makes the following changes, mostly to specs to get them
passing on Puppet 4.x: removes redefinition of $name because it is now
a reserved word and redundant in Puppet 3.x, cleans up the use of
Puppet's old behavior of implicitly converting String to Integers
since Puppet 4.x is pretty strictly typed, sets facts required for
doing flow control and comparison, fixes implicit use of empty string
that is assumed to be the same as false by updating tests that inject
empty string into params to represent a value not being provide by a
user to false instead.
Closes-bug: #1447620
Change-Id: Ibb651f26f33549dbe564dc88167b8f578a03fd77
Some users wish to override the default package provider by their own.
Tag all packages with the 'openstack' to allow mass resource attributes
override using resource collectors.
Change-Id: I7ea5ae48f1bd2ab218b44cb68b20787b5d16e58d
Related-bug: #1391209
By default l3_ha is turned off. Allow l3_ha to be turned back off
after it has been enabled.
Change-Id: I65022e62736fa955c9b898331ccc70b5b2d8b7f6
Closes-Bug: 1431635
This patch aim to update our specs test in order to work with the
rspec-puppet release 2.0.0, in the mean time, we update rspec syntax
order to be prepared for rspec 3.x move.
In details:
* Upgrade and pin rspec-puppet from 1.0.1 to 2.0.0
* Use shared_examples "a Puppet::Error" for puppet::error tests *
* Convert 'should' keyword to 'is_expected.to' (prepare rspec 3.x) *
* Fix spec tests for rspec-puppet 2.0.0
* Clean Gemfile (remove over-specificication of runtime deps of
puppetlabs_spec_helper)
Change-Id: Ida94605916fe26dd4c5fb328f79c4e787d29dcf5
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
This fixes a conditional added in
a9f06231830d9a042cb100010bcab0d8479cd759 that was meant to
skip configuration of the deprecated auth parameters only
if both auth_uri and identity_uri have been set.
Previously the identity_uri was missing its $ meaning
the conditional would fail to configure the legacy auth
settings in some cases.
Includes updates to the test cases to catch this condition.
Change-Id: I8ec9b1e064c160d103c5ae847cf79e20c8bca370
Kilo Neutron now sets a default value for identity_uri in
in the default config file. Packages may or may not remove
this default value... and it trumps all of the auth_host,
auth_port, auth_host, auth_admin_prefix settings we currently use
for our puppet-neutron defaults.
This patch adds the ability to set a new identity_uri parameter.
It also deprecates the old auth_host, auth_port, auth_protocol,
and auth_admin_prefix parameters. Logic is in place so that
users of the deprecated settings should have a smooth upgrade
process and get deprecation warnings until they adopt the
new settings.
Change-Id: Ideefb4d824cbd5b4b83f9eb773a75e536e3458fb
Currently, neutron db sync is requires the db connection to
be set, but is only triggered by changes in the neutron package.
Since the neutron package, containing the neutron-server binary
is a dependency of other neutron services, this means that if
any other neutron service is installed before neutron-server, the
db will not be synced.
This patch modifies the exec resource to subscribe to the db connection
string, handling both the above case and also the case where the
db connection string is changed to point to a new database for
whatever reason and must be re-synced.
Change-Id: I6ce3e31f048dfc47cd39bbbbea9de0934f015ba4
Add state_path and lock_path parameters to the base neutron class, and
deprecate those same parameters from neutron::server. This is because
all Neutron services need those configured in neutron.conf, not only
neutron-server.
I am not sure if it makes sense to override the neutron_config values
from the neutron base class in the way I did (in order to preserve
the current behavior.) It may be better to just depreciate those
parameters outright, instead.
Change-Id: I19819051e4d7bf8ed9caf81adc07a817646e3d21
Closes-bug: 1404017
Allow for customizing the name of the neutron-server service.
The use case here is for organizations that build their own
OpenStack packages, and the service names may differ slightly
from the upstream distro defaults.
Change-Id: If539c51279a8a675e40e356fb4445b6324b75936
Juno brings two new big features:
- distributed routers
- router high availability
This patchs aims to allow the users to configure DVR and/or HA routers.
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Change-Id: Iaab5ab7e63f2627381ca1d5bb1cfd836433d734e
In order to improve scalability of neutron-server and
neutron-metadata-agent we need to spawn multiple processes. This patch
changes default of api, rpc and metadata workers according to processors
count on physical machine.
Change-Id: I0480f1652b181e50a8c10230c293d6dfdec3a670
Number of separate RPC worker processes to spawn.
The default, 0, runs the worker thread in the current process.
Greater than 0 launches that number of child processes as workers.
The parent process manages them.
Closes-bug: #1340316
Change-Id: I7218390a90b4ad082471900cbf2e9f32a88abe28
Currently secrets like rabbit_password, admin_password or database connection
are laked in puppet logs when changed. This commit changes neutron_*_config and
neutron_*_ini types adding a new parameter that triggers obfuscation the values
in puppet logs.
Change-Id: I7dc59ce9580bfb1d4afdfbced668d0cb2979458a
Closes-Bug: #1328448
report_interval is a config in section agent, not section DEFAULT.
It is used by the agents to scheduly report state, and not used by
neutron-server. Missing this config on agent side, leads to flapping
alive status of neutron agents. Therefore report_interval is moved
from class neutron::server to class neutron
Change-Id: I4fa84dabcba8465b297f6dc0eefa1d02a98eafca
When set to false, enables puppet to configure a service without
starting/stopping it on each run. This may be necessary when
using an external clustering system (Corosync/Pacemaker, for
example). Defaults to true.
Change-Id: Ia5b36d9e03bfc4905394bba4fb9873750664b118
Defaults values changed in neutron upstream to improve performances at
large scale.
Patch in Neutron: http://git.io/U1oCmA
Change-Id: Ie79668858eaa34de3872733af06b27e926593973
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Puppetlabs-mysql has been rewritten to be much
cleaner. This patch adds a new parameter for the
neutron mysql and init classes allowing users to
use the new version. Previous behavior will continue
as normal when using the old version (0.9)
Change-Id: Id4ca8f25cffc4c76b90ab2b7d7adf2a80b2c2c4b
https://review.openstack.org/#/c/76358 introduced a new sync_db
parameter and set it to true by default. Unfortunately there
seem to be many cases where this causes problems. One is when
using the OVS plugin with the [database] section stored in
neutron.conf rather than in the ovs_neutron_plugin.ini file.
In such cases the migration will error out with due to being
unable to connect. This is particularly problematic for users
in that no changes to the composition layer are necessary to
hit the error since sync_db is set to true by default: to avoid
the problem they need to make composition layer change to explicitly
set it to false. This patch resolves the problem by setting the
parameter to false by default rather than true. This enables
users who want the migration to run to do so without impacting
users who haven't been expecting the new behavior.
Change-Id: Id8c116212132b6d75ae14019fc6a65447f226c6d
Closes-Bug: #1288975
The log_{dir,file} params was configured in the neutron class::server,
these parameters was not available classes neutron::agent::*
This patch fixes this.
(This patch must be backported to havana (for #1282296))
Closes-bug: #1282296
Change-Id: I205b0ed5db08199000ec11b2212afedf67bf2ed7
- Create symbolic link to have /etc/neutron/plugin.ini
- This file is used to synchronize the database
In that way, the command to populate database is generic to all plugins.
Fixes-Bug #1275688
Change-Id: If320b4fa5682245ac2cc9b4a9f05cf02dadc84c0
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit allows a user to disable logging to a directory (for
example if syslog is enabled) in order not to login twice.
Change-Id: I0d201b8892cdaea86714b39f7716e763a40a2adc
Closes-bug: #1282296
Be consistent with other puppet modules for OpenStack by prefixing
database related parameters with database.
Properly deprecate sql_* parameters and other database parameters.
Closes-bug: #1273771
Change-Id: I6c5fa5426162e2dd358a360324abb040c7462f16
Icehouse brings new schedulers for virtual routing.
This patch aims to:
- add router_scheduler_driver flag support
- document which schedulers we could use
Change-Id: I9ed4464201e1b888ae7474221babe8e5aad38642
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
If the neutron server erroneously thinks than the l2 agent is down
it will fail to bind a port, which can lead to VM's spawn errors.
This patch aims to add support for agent checks flags.
Change-Id: If047c5d52d10a8ca9b1b765400bdd99a29550b1e
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Per rspec-puppet-1.0.1 warning:
DEPRECATION: include_class is deprecated. Use contain_class instead.
Called from .../vendor/gems/rspec-puppet-1.0.1/lib/rspec-puppet/
matchers/include_class.rb:7
Change-Id: I6bc63343597f1b574f9da5beaae187dcc2b3485d
Previously, neutron::server's (deprecated) sql_connection parameter
had a default value, preventing the new/preferred connection
parameter from ever being used.
This change removes that default, permitting the connection
parameter to work properly, and extends unit tests to confirm.
bug introduced at commit 82552e79316a4ffc1c879dd3aaa1f4735a4a35a0,
change I300fc12092bca1abdd105e0c0c272f7fd49258ac
Change-Id: I116b482c620b5c44b88c1b801438a100343f6f9f
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>
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