From 8b2ee6facee0cbe18870ac9a7f41da6093fc23dc Mon Sep 17 00:00:00 2001 From: shuozhang Date: Wed, 21 May 2014 11:20:29 +0800 Subject: [PATCH] Add support for misc options in cinder.conf Add misc_cinder in cinder.conf like misc_nova. Add test Closes-Bug: #1314105 Change-Id: Ia23809e33dd1b64e276d373ce87355dbecf857e9 --- CHANGELOG.md | 4 ++++ README.md | 1 + attributes/default.rb | 5 +++++ metadata.rb | 2 +- spec/cinder_common_spec.rb | 8 ++++++++ templates/default/cinder.conf.erb | 6 ++++++ 6 files changed, 25 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index be31d42..49ee2a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ openstack-block-storage Cookbook CHANGELOG ============================== This file is used to list changes made in each version of the openstack-block-storage cookbook. +## 9.2.2 +### Bug +* Add support for miscellaneous options (like in Compute) + ## 9.2.1 ### Bug * Remove output of extra config lines in cinder.conf.erb diff --git a/README.md b/README.md index 3329c99..c145d2b 100644 --- a/README.md +++ b/README.md @@ -120,6 +120,7 @@ Cinder attributes * `openstack["block-storage"]["rpc_thread_pool_size"]` - Size of RPC thread pool * `openstack["block-storage"]["rpc_conn_pool_size"]` - Size of RPC connection pool * `openstack["block-storage"]["rpc_response_timeout"]` - Seconds to wait for a response from call or multicall +* `openstack["block-storage"]["misc_cinder"] - Array of strings to be added to cinder.conf for misc options, e.g. ['# Comment', 'key=value'] ### Storwize/SVC attributes ### * `openstack['block-storage']['san']['san_ip'] - IP address of SAN controller diff --git a/attributes/default.rb b/attributes/default.rb index e058d1b..f9c8c5f 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -222,6 +222,11 @@ default['openstack']['block-storage']['rbd_secret_uuid'] = nil default['openstack']['block-storage']['rbd_secret_name'] = '00000000-0000-0000-0000-000000000000' default['openstack']['block-storage']['rbd_key_name'] = 'openstack_image_cephx_key' +# Misc option support +# Allow additional strings to be added to cinder.conf +# For example: ['# Comment', 'key=value'] +default['openstack']['block-storage']['misc_cinder'] = [] + case platform_family when 'fedora', 'rhel' # :pragma-foodcritic: ~FC024 - won't fix this # operating system user and group names diff --git a/metadata.rb b/metadata.rb index bc83f1c..d25f190 100644 --- a/metadata.rb +++ b/metadata.rb @@ -5,7 +5,7 @@ maintainer_email 'cookbooks@lists.tfoundry.com' license 'Apache 2.0' description 'The OpenStack Advanced Volume Management service Cinder.' long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) -version '9.2.1' +version '9.2.2' recipe 'openstack-block-storage::api', 'Installs the cinder-api, sets up the cinder database, and cinder service/user/endpoints in keystone' recipe 'openstack-block-storage::client', 'Install packages required for cinder client' diff --git a/spec/cinder_common_spec.rb b/spec/cinder_common_spec.rb index 3d1ca15..931384f 100644 --- a/spec/cinder_common_spec.rb +++ b/spec/cinder_common_spec.rb @@ -520,6 +520,14 @@ describe 'openstack-block-storage::cinder-common' do node.set['openstack']['block-storage']['gpfs']['gpfs_images_dir'] = 'gpfs_images_dir_value' expect(chef_run).to render_file(file.name).with_content(/^gpfs_images_dir = gpfs_images_dir_value$/) end + + it 'templates misc_cinder array correctly' do + node.set['openstack']['block-storage']['misc_cinder'] = ['# Comments', 'MISC=OPTION'] + expect(chef_run).to render_file(file.name).with_content( + /^# Comments$/) + expect(chef_run).to render_file(file.name).with_content( + /^MISC=OPTION$/) + end end end end diff --git a/templates/default/cinder.conf.erb b/templates/default/cinder.conf.erb index 261c61e..01ca013 100644 --- a/templates/default/cinder.conf.erb +++ b/templates/default/cinder.conf.erb @@ -976,3 +976,9 @@ gpfs_sparse_volumes = <%= node['openstack']['block-storage']['gpfs']['gpfs_spars gpfs_storage_pool = <%= node['openstack']['block-storage']['gpfs']['gpfs_storage_pool'] %> <% end %> +# Misc options +<% if node["openstack"]["block-storage"]["misc_cinder"] %> +<% node["openstack"]["block-storage"]["misc_cinder"].each do |m| %> +<%= m %> +<% end %> +<% end %>