From a6478835b272e66ca9328cac1e637d90eac669a4 Mon Sep 17 00:00:00 2001 From: Emilien Macchi Date: Fri, 8 Jul 2016 16:20:25 -0400 Subject: [PATCH] Enable Key Manager service (Barbican) parameter Allow to use Barbican in Cinder with keymgr/api_class parameter. Change-Id: I355b1afa47d33d493ea0d951675983841a8299b4 --- manifests/volume.pp | 7 +++++++ releasenotes/notes/barbican-356c86ac7a7a327c.yaml | 3 +++ spec/classes/cinder_volume_spec.rb | 12 ++++++++++++ 3 files changed, 22 insertions(+) create mode 100644 releasenotes/notes/barbican-356c86ac7a7a327c.yaml diff --git a/manifests/volume.pp b/manifests/volume.pp index e734814a..6f73bad5 100644 --- a/manifests/volume.pp +++ b/manifests/volume.pp @@ -29,6 +29,11 @@ # for example "-c3" for idle only priority. # Defaults to $::os_service_default. # +# [*keymgr_api_class*] +# (optional) Key Manager service. +# Example of valid value: cinder.keymgr.barbican.BarbicanKeyManager +# Defaults to $::os_service_default +# class cinder::volume ( $package_ensure = 'present', $enabled = true, @@ -36,6 +41,7 @@ class cinder::volume ( $volume_clear = $::os_service_default, $volume_clear_size = $::os_service_default, $volume_clear_ionice = $::os_service_default, + $keymgr_api_class = $::os_service_default, ) { include ::cinder::params @@ -78,5 +84,6 @@ class cinder::volume ( 'DEFAULT/volume_clear': value => $volume_clear; 'DEFAULT/volume_clear_size': value => $volume_clear_size; 'DEFAULT/volume_clear_ionice': value => $volume_clear_ionice; + 'keymgr/api_class': value => $keymgr_api_class; } } diff --git a/releasenotes/notes/barbican-356c86ac7a7a327c.yaml b/releasenotes/notes/barbican-356c86ac7a7a327c.yaml new file mode 100644 index 00000000..380abb9b --- /dev/null +++ b/releasenotes/notes/barbican-356c86ac7a7a327c.yaml @@ -0,0 +1,3 @@ +--- +features: + - Allow to configure Key Manager api class parameter to communicate with Barbican. diff --git a/spec/classes/cinder_volume_spec.rb b/spec/classes/cinder_volume_spec.rb index aaed49ff..3a7d4bc9 100644 --- a/spec/classes/cinder_volume_spec.rb +++ b/spec/classes/cinder_volume_spec.rb @@ -18,6 +18,7 @@ describe 'cinder::volume' do it { is_expected.to contain_cinder_config('DEFAULT/volume_clear').with_value('') } it { is_expected.to contain_cinder_config('DEFAULT/volume_clear_size').with_value('') } it { is_expected.to contain_cinder_config('DEFAULT/volume_clear_ionice').with_value('') } + it { is_expected.to contain_cinder_config('keymgr/api_class').with_value('') } describe 'with manage_service false' do let :params do @@ -42,4 +43,15 @@ describe 'cinder::volume' do is_expected.to contain_cinder_config('DEFAULT/volume_clear_ionice').with_value('-c3') end end + + describe 'with barbican parameters' do + let :params do + { + 'keymgr_api_class' => 'cinder.keymgr.barbican.BarbicanKeyManager', + } + end + it 'should set keymgr parameters' do + is_expected.to contain_cinder_config('keymgr/api_class').with_value('cinder.keymgr.barbican.BarbicanKeyManager') + end + end end