puppet-heat/manifests/deps.pp
Thomas Goirand 274e458478 Add support for heat_api_{cfn_,}uwsgi_config in Debian
This patch is adding the configuration of the number of workers,
threads, and the size of the listen queue in Debian, which uses
uwsgi to run Heat API and api-metadata. Therefore, this patch adds
two new heat_api_uwsgi_config and heat_api_cfn_uwsgi_config
providers as well as two new heat::wsgi::uwsgi_api and
heat::wsgi::uwsgi_api_cfn classes.

Change-Id: I0e226046f6e2d69c89681948cee8e8830c186489
2021-04-10 22:44:24 +02:00

49 lines
1.9 KiB
Puppet

# == Class: heat::deps
#
# Heat anchors and dependency management
#
class heat::deps {
# Setup anchors for install, config and service phases of the module. These
# anchors allow external modules to hook the begin and end of any of these
# phases. Package or service management can also be replaced by ensuring the
# package is absent or turning off service management and having the
# replacement depend on the appropriate anchors. When applicable, end tags
# should be notified so that subscribers can determine if installation,
# config or service state changed and act on that if needed.
anchor { 'heat::install::begin': }
-> Package<| tag == 'heat-package'|>
~> anchor { 'heat::install::end': }
-> anchor { 'heat::config::begin': }
-> Heat_config<||>
~> anchor { 'heat::config::end': }
-> anchor { 'heat::db::begin': }
-> anchor { 'heat::db::end': }
~> anchor { 'heat::dbsync::begin': }
-> anchor { 'heat::dbsync::end': }
~> anchor { 'heat::service::begin': }
~> Service<| tag == 'heat-service' |>
~> anchor { 'heat::service::end': }
# all cache settings should be applied and all packages should be installed
# before service startup
Oslo::Cache<||> -> Anchor['heat::service::begin']
# On any uwsgi config change, we must restart Heat API.
Anchor['heat::config::begin']
-> Heat_api_uwsgi_config<||>
~> Anchor['heat::config::end']
# On any uwsgi config change, we must restart Heat API CFN.
Anchor['heat::config::begin']
-> Heat_api_uwsgi_config<||>
~> Anchor['heat::config::end']
# all db settings should be applied and all packages should be installed
# before dbsync starts
Oslo::Db<||> -> Anchor['heat::dbsync::begin']
# Installation or config changes will always restart services.
Anchor['heat::install::end'] ~> Anchor['heat::service::begin']
Anchor['heat::config::end'] ~> Anchor['heat::service::begin']
}