puppet-trove/spec/classes/trove_db_sync_spec.rb
ZhongShengping 90863dce61 Add 'openstack-db' tag to db-sync Exec resource
In order to make easy orchestration on all OpenStack db-sync, add this
tag so people can use this tag in composition layer.
A use case it to set some orchestration to make sure MySQL Galera is
ready before running any Exec with this tag.

Change-Id: I7baded10a128532f7267903fa8d14f576cd9f47a
Closes-Bug: #1755102
2018-03-12 16:33:10 +08:00

44 lines
1.1 KiB
Ruby

require 'spec_helper'
describe 'trove::db::sync' do
shared_examples_for 'trove-dbsync' do
it { is_expected.to contain_class('trove::deps') }
it 'runs trove-db-sync' do
is_expected.to contain_exec('trove-manage db_sync').with(
:command => 'trove-manage db_sync',
:path => '/usr/bin',
:refreshonly => 'true',
:user => 'trove',
:try_sleep => 5,
:tries => 10,
:logoutput => 'on_failure',
:subscribe => ['Anchor[trove::install::end]',
'Anchor[trove::config::end]',
'Anchor[trove::dbsync::begin]'],
:notify => 'Anchor[trove::dbsync::end]',
:tag => '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({
:os_workers => 8,
:concat_basedir => '/var/lib/puppet/concat'
}))
end
it_configures 'trove-dbsync'
end
end
end