add class to handle drivers section
Change-Id: Id93129f3758706d3baa2099e4dec52c068c60c90
This commit is contained in:
parent
4feba93488
commit
98798f23c4
40
manifests/drivers.pp
Normal file
40
manifests/drivers.pp
Normal file
@ -0,0 +1,40 @@
|
||||
# == Class: magnum::drivers
|
||||
#
|
||||
# Manages the magnum drivers section
|
||||
#
|
||||
# === Parameters:
|
||||
#
|
||||
# [*verify_ca*]
|
||||
# (optional) Indicates whether the cluster nodes
|
||||
# validate the Certificate Authority
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*openstack_ca_file*]
|
||||
# (optional) Path to the OpenStack CA-bundle file to
|
||||
# pass and install in all cluster nodes.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*disabled_drivers*]
|
||||
# (optional) Array of disabled driver entry points.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*enabled_beta_drivers*]
|
||||
# (optional) Array of beta drivers to enable.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
class magnum::drivers (
|
||||
Variant[Boolean, Openstacklib::ServiceDefault] $verify_ca = $facts['os_service_default'],
|
||||
Variant[Stdlib::Absolutepath, Openstacklib::ServiceDefault] $openstack_ca_file = $facts['os_service_default'],
|
||||
Variant[Array, Openstacklib::ServiceDefault] $disabled_drivers = $facts['os_service_default'],
|
||||
Variant[Array, Openstacklib::ServiceDefault] $enabled_beta_drivers = $facts['os_service_default'],
|
||||
) {
|
||||
|
||||
include magnum::deps
|
||||
|
||||
magnum_config {
|
||||
'drivers/verify_ca': value => $verify_ca;
|
||||
'drivers/openstack_ca_file': value => $openstack_ca_file;
|
||||
'drivers/disabled_drivers': value => join(any2array($disabled_drivers), ',');
|
||||
'drivers/enabled_beta_drivers': value => join(any2array($enabled_beta_drivers), ',');
|
||||
}
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
Add a class to handle the drivers section in config.
|
45
spec/classes/magnum_drivers_spec.rb
Normal file
45
spec/classes/magnum_drivers_spec.rb
Normal file
@ -0,0 +1,45 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'magnum::drivers' do
|
||||
|
||||
shared_examples 'magnum::drivers' do
|
||||
|
||||
context 'with default parameters' do
|
||||
let :params do
|
||||
{}
|
||||
end
|
||||
|
||||
it { is_expected.to contain_magnum_config('drivers/verify_ca').with_value('<SERVICE DEFAULT>') }
|
||||
it { is_expected.to contain_magnum_config('drivers/openstack_ca_file').with_value('<SERVICE DEFAULT>') }
|
||||
it { is_expected.to contain_magnum_config('drivers/disabled_drivers').with_value('<SERVICE DEFAULT>') }
|
||||
it { is_expected.to contain_magnum_config('drivers/enabled_beta_drivers').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with specific parameters' do
|
||||
let :params do
|
||||
{ :verify_ca => false,
|
||||
:openstack_ca_file => '/tmp/cafile.pem',
|
||||
:disabled_drivers => ['disabled_driver','anotherone'],
|
||||
:enabled_beta_drivers => ['enabled_beta','enabled_beta2'],
|
||||
}
|
||||
end
|
||||
|
||||
it { is_expected.to contain_magnum_config('drivers/verify_ca').with_value(false) }
|
||||
it { is_expected.to contain_magnum_config('drivers/openstack_ca_file').with_value('/tmp/cafile.pem') }
|
||||
it { is_expected.to contain_magnum_config('drivers/disabled_drivers').with_value('disabled_driver,anotherone') }
|
||||
it { is_expected.to contain_magnum_config('drivers/enabled_beta_drivers').with_value('enabled_beta,enabled_beta2') }
|
||||
end
|
||||
end
|
||||
|
||||
on_supported_os({
|
||||
:supported_os => OSDefaults.get_supported_os
|
||||
}).each do |os,facts|
|
||||
context "on #{os}" do
|
||||
let (:facts) do
|
||||
facts.merge!(OSDefaults.get_facts())
|
||||
end
|
||||
|
||||
it_configures 'magnum::drivers'
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user