From ac1f51ce8860a6cc2cb4628cc1467c02da4dc02a Mon Sep 17 00:00:00 2001 From: Dan Prince Date: Wed, 10 Apr 2013 16:08:47 -0400 Subject: [PATCH] Renames cinder::base to cinder. This makes things consistent with other puppet openstack modules (Nova in particular). For backwards compat we still have a cinder::base module which uses init.pp but prints out a warning message. Change-Id: Ie101ae192b7ff08825809aff975f6cc6e655e6b3 --- manifests/base.pp | 62 ++++------------ manifests/init.pp | 72 +++++++++++++++++++ .../{cinder_base_spec.rb => cinder_spec.rb} | 2 +- spec/classes/cinder_volume_spec.rb | 2 +- 4 files changed, 86 insertions(+), 52 deletions(-) create mode 100644 manifests/init.pp rename spec/classes/{cinder_base_spec.rb => cinder_spec.rb} (98%) diff --git a/manifests/base.pp b/manifests/base.pp index e3dee706..b53d93eb 100644 --- a/manifests/base.pp +++ b/manifests/base.pp @@ -16,57 +16,19 @@ class cinder::base ( $verbose = 'False' ) { - include cinder::params + warning('The "cinder::base" class is deprecated. Use "cinder" instead.') - Package['cinder'] -> Cinder_config<||> - Package['cinder'] -> Cinder_api_paste_ini<||> - - package { 'cinder': - name => $::cinder::params::package_name, - ensure => $package_ensure, - } - - file { $::cinder::params::cinder_conf: - ensure => present, - owner => 'cinder', - group => 'cinder', - mode => '0600', - require => Package[$::cinder::params::package_name], - } - - file { $::cinder::params::cinder_paste_api_ini: - ensure => present, - owner => 'cinder', - group => 'cinder', - mode => '0600', - require => Package[$::cinder::params::package_name], - } - - if $rabbit_hosts { - cinder_config { - 'DEFAULT/rabbit_hosts': value => join($rabbit_hosts, ','); - } - } else { - cinder_config { - 'DEFAULT/rabbit_host': value => $rabbit_host; - 'DEFAULT/rabbit_port': value => $rabbit_port; - 'DEFAULT/rabbit_hosts': value => "$rabbit_host:$rabbit_port"; - } - } - - cinder_config { - 'DEFAULT/rabbit_password': value => $rabbit_password; - 'DEFAULT/rabbit_virtual_host': value => $rabbit_virtual_host; - 'DEFAULT/rabbit_userid': value => $rabbit_userid; - 'DEFAULT/sql_connection': value => $sql_connection; - 'DEFAULT/verbose': value => $verbose; - 'DEFAULT/api_paste_config': value => $api_paste_config; - } - - if size($rabbit_hosts) > 1 { - cinder_config { 'DEFAULT/rabbit_ha_queues': value => 'true' } - } else { - cinder_config { 'DEFAULT/rabbit_ha_queues': value => 'false' } + class { "cinder": + rabbit_password => $rabbit_password, + sql_connection => $sql_connection, + rabbit_host => $rabbit_host, + rabbit_port => $rabbit_port, + rabbit_hosts => $rabbit_hosts, + rabbit_virtual_host => $rabbit_virtual_host, + rabbit_userid => $rabbit_userid, + package_ensure => $package_ensure, + api_paste_config => $api_paste_config, + verbose => $verbose, } } diff --git a/manifests/init.pp b/manifests/init.pp new file mode 100644 index 00000000..ae24d27d --- /dev/null +++ b/manifests/init.pp @@ -0,0 +1,72 @@ +# +# parameters that may need to be added +# $state_path = /opt/stack/data/cinder +# $osapi_volume_extension = cinder.api.openstack.volume.contrib.standard_extensions +# $root_helper = sudo /usr/local/bin/cinder-rootwrap /etc/cinder/rootwrap.conf +class cinder ( + $rabbit_password, + $sql_connection, + $rabbit_host = '127.0.0.1', + $rabbit_port = 5672, + $rabbit_hosts = undef, + $rabbit_virtual_host = '/', + $rabbit_userid = 'nova', + $package_ensure = 'present', + $api_paste_config = '/etc/cinder/api-paste.ini', + $verbose = 'False' +) { + + include cinder::params + + Package['cinder'] -> Cinder_config<||> + Package['cinder'] -> Cinder_api_paste_ini<||> + + package { 'cinder': + name => $::cinder::params::package_name, + ensure => $package_ensure, + } + + file { $::cinder::params::cinder_conf: + ensure => present, + owner => 'cinder', + group => 'cinder', + mode => '0600', + require => Package[$::cinder::params::package_name], + } + + file { $::cinder::params::cinder_paste_api_ini: + ensure => present, + owner => 'cinder', + group => 'cinder', + mode => '0600', + require => Package[$::cinder::params::package_name], + } + + if $rabbit_hosts { + cinder_config { + 'DEFAULT/rabbit_hosts': value => join($rabbit_hosts, ','); + } + } else { + cinder_config { + 'DEFAULT/rabbit_host': value => $rabbit_host; + 'DEFAULT/rabbit_port': value => $rabbit_port; + 'DEFAULT/rabbit_hosts': value => "$rabbit_host:$rabbit_port"; + } + } + + cinder_config { + 'DEFAULT/rabbit_password': value => $rabbit_password; + 'DEFAULT/rabbit_virtual_host': value => $rabbit_virtual_host; + 'DEFAULT/rabbit_userid': value => $rabbit_userid; + 'DEFAULT/sql_connection': value => $sql_connection; + 'DEFAULT/verbose': value => $verbose; + 'DEFAULT/api_paste_config': value => $api_paste_config; + } + + if size($rabbit_hosts) > 1 { + cinder_config { 'DEFAULT/rabbit_ha_queues': value => 'true' } + } else { + cinder_config { 'DEFAULT/rabbit_ha_queues': value => 'false' } + } + +} diff --git a/spec/classes/cinder_base_spec.rb b/spec/classes/cinder_spec.rb similarity index 98% rename from spec/classes/cinder_base_spec.rb rename to spec/classes/cinder_spec.rb index edaa82e1..2cb798ba 100644 --- a/spec/classes/cinder_base_spec.rb +++ b/spec/classes/cinder_spec.rb @@ -1,5 +1,5 @@ require 'spec_helper' -describe 'cinder::base' do +describe 'cinder' do let :req_params do {:rabbit_password => 'rpw', :sql_connection => 'mysql://user:password@host/database'} end diff --git a/spec/classes/cinder_volume_spec.rb b/spec/classes/cinder_volume_spec.rb index 3da61a7d..36b2a13c 100644 --- a/spec/classes/cinder_volume_spec.rb +++ b/spec/classes/cinder_volume_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' describe 'cinder::volume' do let :pre_condition do - 'class { "cinder::base": rabbit_password => "fpp", sql_connection => "mysql://a:b@c/d" }' + 'class { "cinder": rabbit_password => "fpp", sql_connection => "mysql://a:b@c/d" }' end let :facts do