|
Lukas Bezdicka |
c3b5127 |
From 7115b154642a0392fac47195e7b9b4a2e2311fe9 Mon Sep 17 00:00:00 2001
|
|
Lukas Bezdicka |
c3b5127 |
From: Jason Guiditta <jguiditt@redhat.com>
|
|
Lukas Bezdicka |
c3b5127 |
Date: Mon, 22 Jun 2015 10:49:01 -0400
|
|
Lukas Bezdicka |
c3b5127 |
Subject: [PATCH] Add manage_service parameter to all agents::ml2 classes that
|
|
Lukas Bezdicka |
c3b5127 |
did not yet have it.
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
This existed in the older agents::ovs and agents::linuxbridge classes
|
|
Lukas Bezdicka |
c3b5127 |
which were recently removed, adding here for consistency.
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
When set to false, enables puppet to configure a service without
|
|
Lukas Bezdicka |
c3b5127 |
starting/stopping it on each run. This may be necessary when
|
|
Lukas Bezdicka |
c3b5127 |
using an external clustering system (Corosync/Pacemaker, for
|
|
Lukas Bezdicka |
c3b5127 |
example). Defaults to true.
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
Change-Id: I3242f790e7d3231a81b447c10aa2d741b7b68a3e
|
|
Lukas Bezdicka |
c3b5127 |
---
|
|
Lukas Bezdicka |
c3b5127 |
neutron/manifests/agents/ml2/linuxbridge.pp | 15 +++++++++++----
|
|
Lukas Bezdicka |
c3b5127 |
neutron/manifests/agents/ml2/ovs.pp | 15 +++++++++++----
|
|
Lukas Bezdicka |
c3b5127 |
neutron/manifests/agents/ml2/sriov.pp | 15 +++++++++++----
|
|
Lukas Bezdicka |
c3b5127 |
.../spec/classes/neutron_agents_ml2_linuxbridge_spec.rb | 10 ++++++++++
|
|
Lukas Bezdicka |
c3b5127 |
neutron/spec/classes/neutron_agents_ml2_ovs_spec.rb | 9 +++++++++
|
|
Lukas Bezdicka |
c3b5127 |
neutron/spec/classes/neutron_agents_ml2_sriov_spec.rb | 12 +++++++++++-
|
|
Lukas Bezdicka |
c3b5127 |
6 files changed, 63 insertions(+), 13 deletions(-)
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/manifests/agents/ml2/linuxbridge.pp b/neutron/manifests/agents/ml2/linuxbridge.pp
|
|
Lukas Bezdicka |
c3b5127 |
index e6cc118..a9bef40 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/manifests/agents/ml2/linuxbridge.pp
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/manifests/agents/ml2/linuxbridge.pp
|
|
Lukas Bezdicka |
c3b5127 |
@@ -12,6 +12,10 @@
|
|
Lukas Bezdicka |
c3b5127 |
# (required) Whether or not to enable the agent.
|
|
Lukas Bezdicka |
c3b5127 |
# Defaults to true.
|
|
Lukas Bezdicka |
c3b5127 |
#
|
|
Lukas Bezdicka |
c3b5127 |
+# [*manage_service*]
|
|
Lukas Bezdicka |
c3b5127 |
+# (optional) Whether to start/stop the service
|
|
Lukas Bezdicka |
c3b5127 |
+# Defaults to true
|
|
Lukas Bezdicka |
c3b5127 |
+#
|
|
Lukas Bezdicka |
c3b5127 |
# [*tunnel_types*]
|
|
Lukas Bezdicka |
c3b5127 |
# (optional) List of types of tunnels to use when utilizing tunnels.
|
|
Lukas Bezdicka |
c3b5127 |
# Supported tunnel types are: vxlan.
|
|
Lukas Bezdicka |
c3b5127 |
@@ -57,6 +61,7 @@
|
|
Lukas Bezdicka |
c3b5127 |
class neutron::agents::ml2::linuxbridge (
|
|
Lukas Bezdicka |
c3b5127 |
$package_ensure = 'present',
|
|
Lukas Bezdicka |
c3b5127 |
$enabled = true,
|
|
Lukas Bezdicka |
c3b5127 |
+ $manage_service = true,
|
|
Lukas Bezdicka |
c3b5127 |
$tunnel_types = [],
|
|
Lukas Bezdicka |
c3b5127 |
$local_ip = false,
|
|
Lukas Bezdicka |
c3b5127 |
$vxlan_group = '224.0.0.1',
|
|
Lukas Bezdicka |
c3b5127 |
@@ -143,10 +148,12 @@ class neutron::agents::ml2::linuxbridge (
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
- if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
- } else {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ if $manage_service {
|
|
Lukas Bezdicka |
c3b5127 |
+ if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
+ } else {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ }
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
service { 'neutron-plugin-linuxbridge-agent':
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/manifests/agents/ml2/ovs.pp b/neutron/manifests/agents/ml2/ovs.pp
|
|
Lukas Bezdicka |
c3b5127 |
index 299ca1a..8b97903 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/manifests/agents/ml2/ovs.pp
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/manifests/agents/ml2/ovs.pp
|
|
Lukas Bezdicka |
c3b5127 |
@@ -29,6 +29,10 @@
|
|
Lukas Bezdicka |
c3b5127 |
# (required) Whether or not to enable the OVS Agent
|
|
Lukas Bezdicka |
c3b5127 |
# Defaults to true
|
|
Lukas Bezdicka |
c3b5127 |
#
|
|
Lukas Bezdicka |
c3b5127 |
+# [*manage_service*]
|
|
Lukas Bezdicka |
c3b5127 |
+# (optional) Whether to start/stop the service
|
|
Lukas Bezdicka |
c3b5127 |
+# Defaults to true
|
|
Lukas Bezdicka |
c3b5127 |
+#
|
|
Lukas Bezdicka |
c3b5127 |
# [*bridge_uplinks*]
|
|
Lukas Bezdicka |
c3b5127 |
# (optional) List of interfaces to connect to the bridge when doing
|
|
Lukas Bezdicka |
c3b5127 |
# bridge mapping.
|
|
Lukas Bezdicka |
c3b5127 |
@@ -91,6 +95,7 @@
|
|
Lukas Bezdicka |
c3b5127 |
class neutron::agents::ml2::ovs (
|
|
Lukas Bezdicka |
c3b5127 |
$package_ensure = 'present',
|
|
Lukas Bezdicka |
c3b5127 |
$enabled = true,
|
|
Lukas Bezdicka |
c3b5127 |
+ $manage_service = true,
|
|
Lukas Bezdicka |
c3b5127 |
$bridge_uplinks = [],
|
|
Lukas Bezdicka |
c3b5127 |
$bridge_mappings = [],
|
|
Lukas Bezdicka |
c3b5127 |
$integration_bridge = 'br-int',
|
|
Lukas Bezdicka |
c3b5127 |
@@ -216,10 +221,12 @@ class neutron::agents::ml2::ovs (
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
- if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
- } else {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ if $manage_service {
|
|
Lukas Bezdicka |
c3b5127 |
+ if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
+ } else {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ }
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
service { 'neutron-ovs-agent-service':
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/manifests/agents/ml2/sriov.pp b/neutron/manifests/agents/ml2/sriov.pp
|
|
Lukas Bezdicka |
c3b5127 |
index a8b22c5..dfb1cc8 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/manifests/agents/ml2/sriov.pp
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/manifests/agents/ml2/sriov.pp
|
|
Lukas Bezdicka |
c3b5127 |
@@ -29,6 +29,10 @@
|
|
Lukas Bezdicka |
c3b5127 |
# (required) Whether or not to enable the OVS Agent
|
|
Lukas Bezdicka |
c3b5127 |
# Defaults to true
|
|
Lukas Bezdicka |
c3b5127 |
#
|
|
Lukas Bezdicka |
c3b5127 |
+# [*manage_service*]
|
|
Lukas Bezdicka |
c3b5127 |
+# (optional) Whether to start/stop the service
|
|
Lukas Bezdicka |
c3b5127 |
+# Defaults to true
|
|
Lukas Bezdicka |
c3b5127 |
+#
|
|
Lukas Bezdicka |
c3b5127 |
# [*physical_device_mappings*]
|
|
Lukas Bezdicka |
c3b5127 |
# (optional) List of <physical_network>:<physical device>
|
|
Lukas Bezdicka |
c3b5127 |
# All physical networks listed in network_vlan_ranges
|
|
Lukas Bezdicka |
c3b5127 |
@@ -50,6 +54,7 @@
|
|
Lukas Bezdicka |
c3b5127 |
class neutron::agents::ml2::sriov (
|
|
Lukas Bezdicka |
c3b5127 |
$package_ensure = 'present',
|
|
Lukas Bezdicka |
c3b5127 |
$enabled = true,
|
|
Lukas Bezdicka |
c3b5127 |
+ $manage_service = true,
|
|
Lukas Bezdicka |
c3b5127 |
$physical_device_mappings = [],
|
|
Lukas Bezdicka |
c3b5127 |
$polling_interval = 2,
|
|
Lukas Bezdicka |
c3b5127 |
$exclude_devices = [],
|
|
Lukas Bezdicka |
c3b5127 |
@@ -73,10 +78,12 @@ class neutron::agents::ml2::sriov (
|
|
Lukas Bezdicka |
c3b5127 |
tag => 'openstack',
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
- if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
- } else {
|
|
Lukas Bezdicka |
c3b5127 |
- $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ if $manage_service {
|
|
Lukas Bezdicka |
c3b5127 |
+ if $enabled {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'running'
|
|
Lukas Bezdicka |
c3b5127 |
+ } else {
|
|
Lukas Bezdicka |
c3b5127 |
+ $service_ensure = 'stopped'
|
|
Lukas Bezdicka |
c3b5127 |
+ }
|
|
Lukas Bezdicka |
c3b5127 |
}
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
service { 'neutron-sriov-nic-agent-service':
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/spec/classes/neutron_agents_ml2_linuxbridge_spec.rb b/neutron/spec/classes/neutron_agents_ml2_linuxbridge_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
index 40223b5..308fca2 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/spec/classes/neutron_agents_ml2_linuxbridge_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/spec/classes/neutron_agents_ml2_linuxbridge_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
@@ -9,6 +9,7 @@ describe 'neutron::agents::ml2::linuxbridge' do
|
|
Lukas Bezdicka |
c3b5127 |
let :default_params do
|
|
Lukas Bezdicka |
c3b5127 |
{ :package_ensure => 'present',
|
|
Lukas Bezdicka |
c3b5127 |
:enabled => true,
|
|
Lukas Bezdicka |
c3b5127 |
+ :manage_service => true,
|
|
Lukas Bezdicka |
c3b5127 |
:tunnel_types => [],
|
|
Lukas Bezdicka |
c3b5127 |
:local_ip => false,
|
|
Lukas Bezdicka |
c3b5127 |
:vxlan_group => '224.0.0.1',
|
|
Lukas Bezdicka |
c3b5127 |
@@ -66,6 +67,15 @@ describe 'neutron::agents::ml2::linuxbridge' do
|
|
Lukas Bezdicka |
c3b5127 |
)
|
|
Lukas Bezdicka |
c3b5127 |
end
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
+ context 'with manage_service as false' do
|
|
Lukas Bezdicka |
c3b5127 |
+ before :each do
|
|
Lukas Bezdicka |
c3b5127 |
+ params.merge!(:manage_service => false)
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ it 'should not start/stop service' do
|
|
Lukas Bezdicka |
c3b5127 |
+ is_expected.to contain_service('neutron-plugin-linuxbridge-agent').without_ensure
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+
|
|
Lukas Bezdicka |
c3b5127 |
it 'does not configre VXLAN tunneling' do
|
|
Lukas Bezdicka |
c3b5127 |
is_expected.to contain_neutron_agent_linuxbridge('vxlan/enable_vxlan').with_value(false)
|
|
Lukas Bezdicka |
c3b5127 |
is_expected.to contain_neutron_agent_linuxbridge('vxlan/local_ip').with_ensure('absent')
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/spec/classes/neutron_agents_ml2_ovs_spec.rb b/neutron/spec/classes/neutron_agents_ml2_ovs_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
index edd0b55..cb0ccfe 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/spec/classes/neutron_agents_ml2_ovs_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/spec/classes/neutron_agents_ml2_ovs_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
@@ -80,6 +80,15 @@ describe 'neutron::agents::ml2::ovs' do
|
|
Lukas Bezdicka |
c3b5127 |
)
|
|
Lukas Bezdicka |
c3b5127 |
end
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
+ context 'with manage_service as false' do
|
|
Lukas Bezdicka |
c3b5127 |
+ before :each do
|
|
Lukas Bezdicka |
c3b5127 |
+ params.merge!(:manage_service => false)
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ it 'should not start/stop service' do
|
|
Lukas Bezdicka |
c3b5127 |
+ is_expected.to contain_service('neutron-ovs-agent-service').without_ensure
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+
|
|
Lukas Bezdicka |
c3b5127 |
context 'when supplying a firewall driver' do
|
|
Lukas Bezdicka |
c3b5127 |
before :each do
|
|
Lukas Bezdicka |
c3b5127 |
params.merge!(:firewall_driver => false)
|
|
Lukas Bezdicka |
c3b5127 |
diff --git a/neutron/spec/classes/neutron_agents_ml2_sriov_spec.rb b/neutron/spec/classes/neutron_agents_ml2_sriov_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
index 7df1408..c28163a 100644
|
|
Lukas Bezdicka |
c3b5127 |
--- a/neutron/spec/classes/neutron_agents_ml2_sriov_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
+++ b/neutron/spec/classes/neutron_agents_ml2_sriov_spec.rb
|
|
Lukas Bezdicka |
c3b5127 |
@@ -9,6 +9,7 @@ describe 'neutron::agents::ml2::sriov' do
|
|
Lukas Bezdicka |
c3b5127 |
let :default_params do
|
|
Lukas Bezdicka |
c3b5127 |
{ :package_ensure => 'present',
|
|
Lukas Bezdicka |
c3b5127 |
:enabled => true,
|
|
Lukas Bezdicka |
c3b5127 |
+ :manage_service => true,
|
|
Lukas Bezdicka |
c3b5127 |
:physical_device_mappings => [],
|
|
Lukas Bezdicka |
c3b5127 |
:exclude_devices => [],
|
|
Lukas Bezdicka |
c3b5127 |
:polling_interval => 2,
|
|
Lukas Bezdicka |
c3b5127 |
@@ -47,7 +48,7 @@ describe 'neutron::agents::ml2::sriov' do
|
|
Lukas Bezdicka |
c3b5127 |
is_expected.to contain_package('neutron-sriov-nic-agent').with_before(/Neutron_plugin_ml2\[.+\]/)
|
|
Lukas Bezdicka |
c3b5127 |
end
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
- it 'configures neutron ovs agent service' do
|
|
Lukas Bezdicka |
c3b5127 |
+ it 'configures neutron sriov agent service' do
|
|
Lukas Bezdicka |
c3b5127 |
is_expected.to contain_service('neutron-sriov-nic-agent-service').with(
|
|
Lukas Bezdicka |
c3b5127 |
:name => platform_params[:sriov_nic_agent_service],
|
|
Lukas Bezdicka |
c3b5127 |
:enable => true,
|
|
Lukas Bezdicka |
c3b5127 |
@@ -56,6 +57,15 @@ describe 'neutron::agents::ml2::sriov' do
|
|
Lukas Bezdicka |
c3b5127 |
)
|
|
Lukas Bezdicka |
c3b5127 |
end
|
|
Lukas Bezdicka |
c3b5127 |
|
|
Lukas Bezdicka |
c3b5127 |
+ context 'with manage_service as false' do
|
|
Lukas Bezdicka |
c3b5127 |
+ before :each do
|
|
Lukas Bezdicka |
c3b5127 |
+ params.merge!(:manage_service => false)
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ it 'should not start/stop service' do
|
|
Lukas Bezdicka |
c3b5127 |
+ is_expected.to contain_service('neutron-sriov-nic-agent-service').without_ensure
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+ end
|
|
Lukas Bezdicka |
c3b5127 |
+
|
|
Lukas Bezdicka |
c3b5127 |
context 'when supplying device mapping' do
|
|
Lukas Bezdicka |
c3b5127 |
before :each do
|
|
Lukas Bezdicka |
c3b5127 |
params.merge!(:physical_device_mappings => ['physnet1:eth1'],
|