Move ceilometer upgrade re-run out of collector
Since collector is deprecated, lets move this out of collector.pp so it gets run and resource types are created appropriately even when collector is not included. Closes-bug: #1676961 Change-Id: I32445a891c34f519ab16dcecc81993f8909f6481
This commit is contained in:
parent
2abcfb46d2
commit
2e89f8ede8
|
@ -18,6 +18,10 @@
|
|||
#
|
||||
# === Parameters
|
||||
#
|
||||
# [*bootstrap_node*]
|
||||
# (Optional) The hostname of the node responsible for bootstrapping tasks
|
||||
# Defaults to hiera('bootstrap_nodeid')
|
||||
#
|
||||
# [*step*]
|
||||
# (Optional) The current step in deployment. See tripleo-heat-templates
|
||||
# for more details.
|
||||
|
@ -68,6 +72,7 @@
|
|||
# Defaults to hiera('ceilometer::rabbit_use_ssl', '0')
|
||||
|
||||
class tripleo::profile::base::ceilometer (
|
||||
$bootstrap_node = hiera('bootstrap_nodeid', undef),
|
||||
$step = hiera('step'),
|
||||
$oslomsg_rpc_proto = hiera('messaging_rpc_service_name', 'rabbit'),
|
||||
$oslomsg_rpc_hosts = any2array(hiera('rabbitmq_node_names', undef)),
|
||||
|
@ -81,6 +86,11 @@ class tripleo::profile::base::ceilometer (
|
|||
$oslomsg_notify_username = hiera('ceilometer::rabbit_userid', 'guest'),
|
||||
$oslomsg_use_ssl = hiera('ceilometer::rabbit_use_ssl', '0'),
|
||||
) {
|
||||
if $::hostname == downcase($bootstrap_node) {
|
||||
$sync_db = true
|
||||
} else {
|
||||
$sync_db = false
|
||||
}
|
||||
|
||||
if $step >= 3 {
|
||||
$oslomsg_use_ssl_real = sprintf('%s', bool2num(str2bool($oslomsg_use_ssl)))
|
||||
|
@ -105,4 +115,12 @@ class tripleo::profile::base::ceilometer (
|
|||
include ::ceilometer::config
|
||||
}
|
||||
|
||||
# Run ceilometer-upgrade in step 5 so gnocchi resource types
|
||||
# are created safely.
|
||||
if $step >= 5 and $sync_db {
|
||||
exec {'ceilometer-db-upgrade':
|
||||
command => 'ceilometer-upgrade --skip-metering-database',
|
||||
path => ['/usr/bin', '/usr/sbin'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -84,13 +84,4 @@ class tripleo::profile::base::ceilometer::collector (
|
|||
include ::ceilometer::collector
|
||||
include ::ceilometer::dispatcher::gnocchi
|
||||
}
|
||||
|
||||
# Re-run ceilometer-upgrade again in step 5 so gnocchi resource types
|
||||
# are created safely.
|
||||
if $step >= 5 and $sync_db {
|
||||
exec {'ceilometer-db-upgrade':
|
||||
command => 'ceilometer-upgrade --skip-metering-database',
|
||||
path => ['/usr/bin', '/usr/sbin'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
fixes:
|
||||
- Since collector is deprecated, move the ceilo upgrade in step5
|
||||
out of collector profile and into cielometer base. This way
|
||||
ceilo upgrade can run even when collector is disabled which is
|
||||
the default in pike.
|
|
@ -128,32 +128,6 @@ describe 'tripleo::profile::base::ceilometer::collector' do
|
|||
is_expected.to contain_class('ceilometer::dispatcher::gnocchi')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with step 5 on bootstrap node' do
|
||||
let(:params) { {
|
||||
:step => 5,
|
||||
:bootstrap_node => 'node.example.com',
|
||||
:mongodb_node_ips => ['127.0.0.1',],
|
||||
:mongodb_replset => 'replicaset'
|
||||
} }
|
||||
|
||||
it 'should trigger complete configuration' do
|
||||
is_expected.to contain_exec('ceilometer-db-upgrade')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with step 5 not on bootstrap node' do
|
||||
let(:params) { {
|
||||
:step => 5,
|
||||
:bootstrap_node => 'somethingelse.example.com',
|
||||
:mongodb_node_ips => ['127.0.0.1',],
|
||||
:mongodb_replset => 'replicaset'
|
||||
} }
|
||||
|
||||
it 'should trigger complete configuration' do
|
||||
is_expected.to_not contain_exec('ceilometer-db-upgrade')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
|
|
@ -42,6 +42,31 @@ describe 'tripleo::profile::base::ceilometer' do
|
|||
is_expected.to contain_class('ceilometer::config')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with step 5 with bootstrap node' do
|
||||
let(:params) { {
|
||||
:bootstrap_node => 'node.example.com',
|
||||
:step => 5,
|
||||
:oslomsg_rpc_hosts => [ '127.0.0.1' ],
|
||||
:oslomsg_rpc_username => 'ceilometer',
|
||||
:oslomsg_rpc_password => 'foo',
|
||||
} }
|
||||
|
||||
it 'should trigger complete configuration' do
|
||||
is_expected.to contain_exec('ceilometer-db-upgrade')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with step 5 without bootstrap node' do
|
||||
let(:params) { {
|
||||
:bootstrap_node => 'somethingelse.example.com',
|
||||
:step => 5,
|
||||
} }
|
||||
|
||||
it 'should trigger complete configuration' do
|
||||
is_expected.to_not contain_exec('ceilometer-db-upgrade')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue