767d291f7a
As Openstack projects continue to have longer database migration chains, the Puppet default timeout of 300 seconds for an execution is becoming too short a duration on some hardware, leading to timeouts. As projects continue to add more migration scripts without pruning the base, timeouts will continue to become more frequent unless this time can be expanded. Change-Id: I1ef3bac653e5333feb6e2cf83025e6bb13eaebf4 Closes-Bug: #1904962
69 lines
2.1 KiB
Ruby
69 lines
2.1 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe 'keystone::db::sync' do
|
|
shared_examples 'keystone::db::sync' do
|
|
describe 'with only required params' do
|
|
|
|
it { is_expected.to contain_class('keystone::deps') }
|
|
|
|
it {
|
|
is_expected.to contain_exec('keystone-manage db_sync').with(
|
|
:command => 'keystone-manage db_sync',
|
|
:path => '/usr/bin',
|
|
:user => 'keystone',
|
|
:try_sleep => 5,
|
|
:tries => 10,
|
|
:timeout => 300,
|
|
:refreshonly => true,
|
|
:logoutput => 'on_failure',
|
|
:subscribe => ['Anchor[keystone::install::end]',
|
|
'Anchor[keystone::config::end]',
|
|
'Anchor[keystone::dbsync::begin]'],
|
|
:notify => 'Anchor[keystone::dbsync::end]',
|
|
:tag => ['keystone-exec', 'openstack-db'],
|
|
)
|
|
}
|
|
end
|
|
|
|
describe "overriding params" do
|
|
let :params do
|
|
{
|
|
:extra_params => '--config-file /etc/keystone/keystone.conf',
|
|
:keystone_user => 'test_user',
|
|
:db_sync_timeout => 750,
|
|
}
|
|
end
|
|
|
|
it {
|
|
is_expected.to contain_exec('keystone-manage db_sync').with(
|
|
:command => 'keystone-manage --config-file /etc/keystone/keystone.conf db_sync',
|
|
:path => '/usr/bin',
|
|
:user => 'test_user',
|
|
:try_sleep => 5,
|
|
:tries => 10,
|
|
:timeout => 750,
|
|
:refreshonly => true,
|
|
:logoutput => 'on_failure',
|
|
:subscribe => ['Anchor[keystone::install::end]',
|
|
'Anchor[keystone::config::end]',
|
|
'Anchor[keystone::dbsync::begin]'],
|
|
:notify => 'Anchor[keystone::dbsync::end]',
|
|
:tag => ['keystone-exec', 'openstack-db'],
|
|
)
|
|
}
|
|
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_behaves_like 'keystone::db::sync'
|
|
end
|
|
end
|
|
end
|