Add new classes ovs_driver and sriov_driver
Those classes handles ML2 plugin's configuration related to the OVS and SR-IOV mechanism drivers. Previously there was neutron::plugins::ml2::mech_driver function which was used by neutron::plugins::ml2 class but it isn't used at all currently and probably it will need to be deprecated and removed in follow up patch(es). Change-Id: I2a321fb780e789b7556d557e2170a3267049c432
This commit is contained in:
parent
59d60747b1
commit
0b8a90ec5c
31
manifests/plugins/ml2/ovs_driver.pp
Normal file
31
manifests/plugins/ml2/ovs_driver.pp
Normal file
@ -0,0 +1,31 @@
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
# neutron::plugins::ml2::ovs_driver
|
||||
#
|
||||
# === Parameters:
|
||||
#
|
||||
# [*vnic_type_blacklist*]
|
||||
# (optional) list of VNIC types for which support in Neutron is
|
||||
# administratively prohibited by the OVS mechanism driver
|
||||
# Defaults to []
|
||||
#
|
||||
class neutron::plugins::ml2::ovs_driver (
|
||||
$vnic_type_blacklist = [],
|
||||
){
|
||||
|
||||
if !empty($vnic_type_blacklist) {
|
||||
neutron_plugin_ml2 {
|
||||
'ovs_driver/vnic_type_blacklist': value => join(any2array($vnic_type_blacklist), ',');
|
||||
}
|
||||
}
|
||||
}
|
31
manifests/plugins/ml2/sriov_driver.pp
Normal file
31
manifests/plugins/ml2/sriov_driver.pp
Normal file
@ -0,0 +1,31 @@
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
# neutron::plugins::ml2::ovs_driver
|
||||
#
|
||||
# === Parameters:
|
||||
#
|
||||
# [*vnic_type_blacklist*]
|
||||
# (optional) list of VNIC types for which support in Neutron is
|
||||
# administratively prohibited by the OVS mechanism driver
|
||||
# Defaults to []
|
||||
#
|
||||
class neutron::plugins::ml2::sriov_driver (
|
||||
$vnic_type_blacklist= [],
|
||||
){
|
||||
|
||||
if !empty($vnic_type_blacklist) {
|
||||
neutron_plugin_ml2 {
|
||||
'sriov_driver/vnic_type_blacklist': value => join(any2array($vnic_type_blacklist), ',');
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
The following two new classes have been added, to set up parameters in
|
||||
ovs_driver and sriov_driver section.
|
||||
|
||||
- ``neutron::plugins::ml2::ovs_driver``
|
||||
- ``neutron::plugins::ml2::sriov_driver``
|
34
spec/classes/neutron_plugins_ml2_ovs_driver.rb
Normal file
34
spec/classes/neutron_plugins_ml2_ovs_driver.rb
Normal file
@ -0,0 +1,34 @@
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
# Unit tests for neutron::plugins::ml2::ovs_driver class
|
||||
|
||||
required 'spec_helper'
|
||||
|
||||
describe 'neutron::plugins::ml2::ovs_driver' do
|
||||
|
||||
let :default_params do
|
||||
{
|
||||
:vnic_type_blacklist => []
|
||||
}
|
||||
end
|
||||
|
||||
context 'when vnic_type_blacklist is not empty list' do
|
||||
before :each do
|
||||
params.merge!(:vnic_type_blacklist => ['direct'])
|
||||
end
|
||||
|
||||
it 'should configure direct in vnic_type_blacklist' do
|
||||
shoud contain_neutron_plugin_ml2('ovs_driver/vnic_type_blacklist').with_value("direct")
|
||||
end
|
||||
end
|
||||
end
|
34
spec/classes/neutron_plugins_ml2_sriov_driver.rb
Normal file
34
spec/classes/neutron_plugins_ml2_sriov_driver.rb
Normal file
@ -0,0 +1,34 @@
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
# Unit tests for neutron::plugins::ml2::sriov_driver class
|
||||
|
||||
required 'spec_helper'
|
||||
|
||||
describe 'neutron::plugins::ml2::sriov_driver' do
|
||||
|
||||
let :default_params do
|
||||
{
|
||||
:vnic_type_blacklist => []
|
||||
}
|
||||
end
|
||||
|
||||
context 'when vnic_type_blacklist is not empty list' do
|
||||
before :each do
|
||||
params.merge!(:vnic_type_blacklist => ['direct'])
|
||||
end
|
||||
|
||||
it 'should configure direct in vnic_type_blacklist' do
|
||||
shoud contain_neutron_plugin_ml2('sriov_driver/vnic_type_blacklist').with_value("direct")
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user