sqlalchemy: Ensure backend package is installed
Some of the backends supported by sqlalchemy (eg mysql + pymysql) require additional packages. This ensures the required packages are installed using the oslo::db defined type. Change-Id: I7fc4cea95a0a7ecba7def9db4f01c16ef1cfa2f3
This commit is contained in:
parent
2d8f3e3ef0
commit
30d6d4c102
|
@ -3,8 +3,13 @@
|
|||
# [*uri*]
|
||||
# SQLAlchemy Connection URI. Required.
|
||||
#
|
||||
# [*package_ensure*]
|
||||
# (Optional) Ensure state for package.
|
||||
# Defaults to present.
|
||||
#
|
||||
class zaqar::management::sqlalchemy(
|
||||
$uri,
|
||||
$package_ensure = 'present',
|
||||
) {
|
||||
|
||||
include zaqar::deps
|
||||
|
@ -13,4 +18,9 @@ class zaqar::management::sqlalchemy(
|
|||
'drivers:management_store:sqlalchemy/uri': value => $uri, secret => true;
|
||||
}
|
||||
|
||||
oslo::db { 'zaqar_config':
|
||||
connection => $uri,
|
||||
backend_package_ensure => $package_ensure,
|
||||
manage_config => false,
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
features:
|
||||
- |
|
||||
The ``zaqar::management::sqlalchemy`` class now ensures the dependent
|
||||
library packages such as PyMySQL is installed. The package's state can be
|
||||
customized using the new ``package_ensure`` parameter.
|
|
@ -30,6 +30,10 @@ describe 'zaqar::management::sqlalchemy' do
|
|||
is_expected.to contain_zaqar_config('drivers:management_store:sqlalchemy/uri').with(
|
||||
:value => 'mysql://user:pass@127.0.0.1/zaqar',
|
||||
)
|
||||
is_expected.to contain_oslo__db('zaqar_config').with(
|
||||
:connection => 'mysql://user:pass@127.0.0.1/zaqar',
|
||||
:backend_package_ensure => 'present'
|
||||
)
|
||||
end
|
||||
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue