diff --git a/manifests/params.pp b/manifests/params.pp index 29e9b0f95..df14e7e8b 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -27,7 +27,7 @@ class nova::params { $serialproxy_package_name = 'openstack-nova-serialproxy' $spicehtml5proxy_package_name = 'openstack-nova-console' $sqlite_package_name = undef - $pymysql_package_name = 'python2-PyMySQL' + $pymysql_package_name = undef # service names $api_service_name = 'openstack-nova-api' $cells_service_name = 'openstack-nova-cells' diff --git a/spec/classes/nova_db_spec.rb b/spec/classes/nova_db_spec.rb index 4336dfa8e..62bc602bb 100644 --- a/spec/classes/nova_db_spec.rb +++ b/spec/classes/nova_db_spec.rb @@ -79,12 +79,21 @@ describe 'nova::db' do }) end - let :platform_params do - { :pymysql_package_name => 'python-pymysql' } - end - it_configures 'nova::db' + context 'using pymysql driver' do + let :params do + { :database_connection => 'mysql+pymysql://user:pass@db/db', } + end + it 'install the proper backend package' do + is_expected.to contain_package('nova-backend-package').with( + :ensure => 'present', + :name => 'python-pymysql', + :tag => 'openstack' + ) + end + end + context 'with sqlite backend' do let :params do { :database_connection => 'sqlite:///var/lib/nova/nova.sqlite', } @@ -109,11 +118,15 @@ describe 'nova::db' do }) end - let :platform_params do - { :pymysql_package_name => 'python2-PyMySQL' } - end - it_configures 'nova::db' + + context 'using pymysql driver' do + let :params do + { :database_connection => 'mysql+pymysql://user:pass@db/db', } + end + + it { is_expected.not_to contain_package('nova-backend-package') } + end end end