panko: Do db_sync in api manifest

The db_sync from panko comes from the panko-api package; So we move the
db_sync to be done in the api manifest as it's done for other services
such as barbican.

This is necessary since in cases where the overcloud deploy requires
puppet to do the installations, with the previous setup it failed since
the command wasn't available in the step it was being done.

Change-Id: I20a549cbaa2ee4b2c762dbae97f5cbf4d0b517c8
Closes-Bug: #1671716
(cherry picked from commit d73c2630b5)
This commit is contained in:
Juan Antonio Osorio Robles 2017-03-10 11:44:56 +02:00 committed by Emilien Macchi
parent cf77c118d7
commit d71efd8a8f
2 changed files with 18 additions and 18 deletions

View File

@ -23,26 +23,12 @@
# for more details.
# Defaults to hiera('step')
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
class tripleo::profile::base::panko (
$step = hiera('step'),
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
if $step >= 4 or ($step >= 3 and $sync_db) {
if $step >= 3 {
include ::panko
include ::panko::db
include ::panko::config
include ::panko::db::sync
}
}

View File

@ -18,6 +18,10 @@
#
# === Parameters
#
# [*bootstrap_node*]
# (Optional) The hostname of the node responsible for bootstrapping tasks
# Defaults to hiera('bootstrap_nodeid')
#
# [*certificates_specs*]
# (Optional) The specifications to give to certmonger for the certificate(s)
# it will create.
@ -53,12 +57,19 @@
# Defaults to hiera('step')
#
class tripleo::profile::base::panko::api (
$bootstrap_node = hiera('bootstrap_nodeid', undef),
$certificates_specs = hiera('apache_certificates_specs', {}),
$enable_internal_tls = hiera('enable_internal_tls', false),
$generate_service_certificates = hiera('generate_service_certificates', false),
$panko_network = hiera('panko_api_network', undef),
$step = hiera('step'),
) {
if $::hostname == downcase($bootstrap_node) {
$sync_db = true
} else {
$sync_db = false
}
include ::tripleo::profile::base::panko
if $enable_internal_tls {
@ -76,8 +87,11 @@ class tripleo::profile::base::panko::api (
$tls_keyfile = undef
}
if $step >= 4 {
include ::panko::api
if $step >= 4 or ( $step >= 3 and $sync_db ) {
include ::panko::db
class { '::panko::api':
sync_db => $sync_db,
}
class { '::panko::wsgi::apache':
ssl_cert => $tls_certfile,
ssl_key => $tls_keyfile,