diff --git a/manifests/backend/rbd.pp b/manifests/backend/rbd.pp index bec1a884..9ff56de7 100644 --- a/manifests/backend/rbd.pp +++ b/manifests/backend/rbd.pp @@ -12,6 +12,12 @@ # # $show_image_direct_url - Optional. Enables direct COW from glance to rbd # DEPRECATED, use show_image_direct_url in glance::api +# +# [*package_ensure*] +# (optional) Desired ensure state of packages. +# accepts latest or specific versions. +# Defaults to present. +# class glance::backend::rbd( $rbd_store_user = undef, @@ -19,6 +25,7 @@ class glance::backend::rbd( $rbd_store_pool = 'images', $rbd_store_chunk_size = '8', $show_image_direct_url = undef, + $package_ensure = 'present', ) { include glance::params @@ -35,7 +42,7 @@ class glance::backend::rbd( } package { 'python-ceph': - ensure => 'present', + ensure => $package_ensure, name => $::glance::params::pyceph_package_name, } diff --git a/spec/classes/glance_backend_rbd_spec.rb b/spec/classes/glance_backend_rbd_spec.rb index 1d4b7e61..f78b61e8 100644 --- a/spec/classes/glance_backend_rbd_spec.rb +++ b/spec/classes/glance_backend_rbd_spec.rb @@ -31,9 +31,15 @@ describe 'glance::backend::rbd' do { :rbd_store_user => 'user', :rbd_store_chunk_size => '2', + :package_ensure => 'latest', } end it { should contain_glance_api_config('DEFAULT/rbd_store_user').with_value('user') } it { should contain_glance_api_config('DEFAULT/rbd_store_chunk_size').with_value('2') } + it { should contain_package('python-ceph').with( + :name => 'python-ceph', + :ensure => 'latest' + ) + } end end