Create a sync_db boolean for Heat.
Other components offer the option to decide whether or not to run the db sync command. Heat was missing this feature. This commit add this feature for Heat. Change-Id: I06b669123fe08e02c66ee34dab78a943ff5de90c
This commit is contained in:
parent
bbeb24c51a
commit
744f4bbcf5
@ -95,7 +95,7 @@ class heat::api (
|
||||
hasrestart => true,
|
||||
require => [Package['heat-common'],
|
||||
Package['heat-api']],
|
||||
subscribe => Exec['heat-dbsync'],
|
||||
subscribe => $::heat::subscribe_sync_db,
|
||||
}
|
||||
|
||||
heat_config {
|
||||
|
@ -98,7 +98,7 @@ class heat::api_cfn (
|
||||
enable => $enabled,
|
||||
hasstatus => true,
|
||||
hasrestart => true,
|
||||
subscribe => Exec['heat-dbsync'],
|
||||
subscribe => $::heat::subscribe_sync_db,
|
||||
}
|
||||
|
||||
heat_config {
|
||||
|
@ -98,7 +98,7 @@ class heat::api_cloudwatch (
|
||||
enable => $enabled,
|
||||
hasstatus => true,
|
||||
hasrestart => true,
|
||||
subscribe => Exec['heat-dbsync'],
|
||||
subscribe => $::heat::subscribe_sync_db,
|
||||
}
|
||||
|
||||
heat_config {
|
||||
|
@ -67,6 +67,7 @@ class heat::engine (
|
||||
$configure_delegated_roles = true, #DEPRECATED
|
||||
) {
|
||||
|
||||
include ::heat
|
||||
include ::heat::params
|
||||
|
||||
Heat_config<||> ~> Service['heat-engine']
|
||||
@ -77,7 +78,7 @@ class heat::engine (
|
||||
ensure => installed,
|
||||
name => $::heat::params::engine_package_name,
|
||||
tag => 'openstack',
|
||||
notify => Exec['heat-dbsync'],
|
||||
notify => $::heat::subscribe_sync_db,
|
||||
}
|
||||
|
||||
if $manage_service {
|
||||
@ -104,7 +105,7 @@ class heat::engine (
|
||||
require => [ File['/etc/heat/heat.conf'],
|
||||
Package['heat-common'],
|
||||
Package['heat-engine']],
|
||||
subscribe => Exec['heat-dbsync'],
|
||||
subscribe => $::heat::subscribe_sync_db,
|
||||
}
|
||||
|
||||
heat_config {
|
||||
|
@ -164,6 +164,10 @@
|
||||
# (Optional) Enable the stack-abandon feature.
|
||||
# Defaults to undef
|
||||
#
|
||||
# [*sync_db*]
|
||||
# (Optional) Run db sync on nodes after connection setting has been set.
|
||||
# Defaults to true
|
||||
#
|
||||
# === Deprecated Parameters
|
||||
#
|
||||
# [*mysql_module*]
|
||||
@ -229,6 +233,7 @@ class heat(
|
||||
$region_name = undef,
|
||||
$enable_stack_adopt = undef,
|
||||
$enable_stack_abandon = undef,
|
||||
$sync_db = true,
|
||||
# Deprecated parameters
|
||||
$mysql_module = undef,
|
||||
$sql_connection = undef,
|
||||
@ -506,14 +511,17 @@ class heat(
|
||||
value => $database_idle_timeout;
|
||||
}
|
||||
|
||||
Heat_config['database/connection'] ~> Exec['heat-dbsync']
|
||||
if $sync_db {
|
||||
$subscribe_sync_db = Exec['heat-dbsync']
|
||||
Heat_config['database/connection'] ~> Exec['heat-dbsync']
|
||||
|
||||
exec { 'heat-dbsync':
|
||||
command => $::heat::params::dbsync_command,
|
||||
path => '/usr/bin',
|
||||
user => 'heat',
|
||||
refreshonly => true,
|
||||
logoutput => on_failure,
|
||||
exec { 'heat-dbsync':
|
||||
command => $::heat::params::dbsync_command,
|
||||
path => '/usr/bin',
|
||||
user => 'heat',
|
||||
refreshonly => true,
|
||||
logoutput => on_failure,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -100,6 +100,17 @@ describe 'heat::api_cfn' do
|
||||
is_expected.to contain_service('heat-api-cfn').that_subscribes_to('Exec[heat-dbsync]')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with $sync_db set to false in ::heat' do
|
||||
let :pre_condition do
|
||||
"class {'heat': sync_db => false}"
|
||||
end
|
||||
|
||||
it 'configures heat-api-cfn service to not subscribe to the dbsync resource' do
|
||||
is_expected.to contain_service('heat-api-cfn').that_subscribes_to(nil)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
@ -100,6 +100,17 @@ describe 'heat::api_cloudwatch' do
|
||||
is_expected.to contain_service('heat-api-cloudwatch').that_subscribes_to('Exec[heat-dbsync]')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with $sync_db set to false in ::heat' do
|
||||
let :pre_condition do
|
||||
"class {'heat': sync_db => false}"
|
||||
end
|
||||
|
||||
it 'configures heat-api-cloudwatch service to not subscribe to the dbsync resource' do
|
||||
is_expected.to contain_service('heat-api-cloudwatch').that_subscribes_to(nil)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
@ -103,6 +103,16 @@ describe 'heat::api' do
|
||||
is_expected.to contain_service('heat-api').that_subscribes_to('Exec[heat-dbsync]')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with $sync_db set to false in ::heat' do
|
||||
let :pre_condition do
|
||||
"class {'heat': sync_db => false}"
|
||||
end
|
||||
|
||||
it 'configures heat-api service to not subscribe to the dbsync resource' do
|
||||
is_expected.to contain_service('heat-api').that_subscribes_to(nil)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
@ -99,6 +99,21 @@ describe 'heat::engine' do
|
||||
:subscribe => 'Exec[heat-dbsync]'
|
||||
) }
|
||||
end
|
||||
context 'with $sync_db set to false in ::heat' do
|
||||
let :pre_condition do
|
||||
"class {'heat': sync_db => false}"
|
||||
end
|
||||
|
||||
it 'configures heat-engine service to not subscribe to the dbsync resource' do
|
||||
is_expected.to contain_service('heat-engine').that_subscribes_to(nil)
|
||||
end
|
||||
|
||||
it 'configures the heat-engine package to not be notified by the dbsync resource ' do
|
||||
is_expected.to contain_package('heat-engine').with(
|
||||
:notify => nil,
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
Loading…
Reference in New Issue
Block a user