puppet-keystone/spec/classes/keystone_db_sync_spec.rb
iberezovskiy c0fcdb5a0e Changes around keystone-manage commands
* perform all keystone-manage commands only as keystone user
* as it possible to override keystone user in init class
  we should also have an ability to override it in db::sync class
* ensure that fernet key directory is created before fernet
  setup command and it's owned by keystone user

Closes-bug: #1604884

Change-Id: Ib90d8e2259b9a650a2edb5f0baf0e68451b9abf6
2016-07-21 19:49:06 +03:00

56 lines
1.6 KiB
Ruby

require 'spec_helper'
describe 'keystone::db::sync' do
shared_examples_for 'keystone-dbsync' 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 => ['Anchor[keystone::install::end]',
'Anchor[keystone::config::end]',
'Anchor[keystone::dbsync::begin]'],
:notify => 'Anchor[keystone::dbsync::end]',
)
}
end
describe "overriding extra_params and keystone user" do
let :params do
{
:extra_params => '--config-file /etc/keystone/keystone.conf',
:keystone_user => 'test_user',
}
end
it {
is_expected.to contain_exec('keystone-manage db_sync').with(
:command => 'keystone-manage --config-file /etc/keystone/keystone.conf db_sync',
:user => 'test_user',
:refreshonly => true,
:subscribe => ['Anchor[keystone::install::end]',
'Anchor[keystone::config::end]',
'Anchor[keystone::dbsync::begin]'],
:notify => 'Anchor[keystone::dbsync::end]',
)
}
end
end
on_supported_os({
:supported_os => OSDefaults.get_supported_os
}).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end
it_configures 'keystone-dbsync'
end
end
end