Allow customization of db sync command line
Add $extra_params parameter to keystone::db::sync class to allow end-users to add command line parameters to the db_sync command. Change-Id: I3965a4d0d4974e7ee925c99207d4d6d4510a517f Closes-bug: 1472740
This commit is contained in:
parent
aee4a8f8fc
commit
ea12fb2d54
@ -1,8 +1,20 @@
|
||||
#
|
||||
# Class to execute "keystone-manage db_sync
|
||||
#
|
||||
class keystone::db::sync {
|
||||
# == Parameters
|
||||
#
|
||||
# [*extra_params*]
|
||||
# (optional) String of extra command line parameters to append
|
||||
# to the keystone-manage db_sync command. These will be
|
||||
# inserted in the command line between 'keystone-manage' and
|
||||
# 'db_sync' in the command line.
|
||||
# Defaults to ''
|
||||
#
|
||||
class keystone::db::sync(
|
||||
$extra_params = undef,
|
||||
) {
|
||||
exec { 'keystone-manage db_sync':
|
||||
command => "keystone-manage ${extra_params} db_sync",
|
||||
path => '/usr/bin',
|
||||
user => 'keystone',
|
||||
refreshonly => true,
|
||||
|
35
spec/classes/keystone_db_sync_spec.rb
Normal file
35
spec/classes/keystone_db_sync_spec.rb
Normal file
@ -0,0 +1,35 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe 'keystone::db::sync' do
|
||||
|
||||
describe 'with only required params' do
|
||||
it {
|
||||
is_expected.to contain_exec('keystone-manage db_sync').with(
|
||||
:command => 'keystone-manage db_sync',
|
||||
:user => 'keystone',
|
||||
:refreshonly => true,
|
||||
:subscribe => ['Package[keystone]', 'Keystone_config[database/connection]'],
|
||||
:require => 'User[keystone]'
|
||||
)
|
||||
}
|
||||
end
|
||||
|
||||
describe "overriding extra_params" do
|
||||
let :params do
|
||||
{
|
||||
:extra_params => '--config-file /etc/keystone/keystone.conf',
|
||||
}
|
||||
end
|
||||
|
||||
it {
|
||||
is_expected.to contain_exec('keystone-manage db_sync').with(
|
||||
:command => 'keystone-manage --config-file /etc/keystone/keystone.conf db_sync',
|
||||
:user => 'keystone',
|
||||
:refreshonly => true,
|
||||
:subscribe => ['Package[keystone]', 'Keystone_config[database/connection]'],
|
||||
:require => 'User[keystone]'
|
||||
)
|
||||
}
|
||||
end
|
||||
|
||||
end
|
@ -136,6 +136,7 @@ describe 'keystone' do
|
||||
it 'should synchronize the db if $sync_db is true' do
|
||||
if param_hash['sync_db']
|
||||
is_expected.to contain_exec('keystone-manage db_sync').with(
|
||||
:command => 'keystone-manage db_sync',
|
||||
:user => 'keystone',
|
||||
:refreshonly => true,
|
||||
:subscribe => ['Package[keystone]', 'Keystone_config[database/connection]'],
|
||||
|
Loading…
Reference in New Issue
Block a user