Merge "Enable sudo rule creation"

This commit is contained in:
Zuul 2020-02-19 21:59:42 +00:00 committed by Gerrit Code Review
commit 854e847d7a
1 changed files with 50 additions and 35 deletions

View File

@ -305,6 +305,12 @@ parameters:
type: boolean
description: Set to true if sensubility should be executed by exec plugin.
default: false
CollectdSensubilityExecSudoRule:
type: string
description: >
Given rule will be created in /etc/sudoers.d for sensubility to enable it calling
restricted commands via sensubility executor.
default: ''
CollectdSensubilityLogLevel:
type: string
description: Use for override the default logging level (WARNING).
@ -397,6 +403,9 @@ conditions:
enable_sensubility:
equals: [{get_param: CollectdEnableSensubility}, true]
enable_sqlalchemy_collectd: {equals : [{get_param: EnableSQLAlchemyCollectd}, true]}
sensubility_needs_sudo:
not:
equals: [{get_param: CollectdSensubilityExecSudoRule}, '']
resources:
@ -553,46 +562,52 @@ outputs:
- {}
- if: # Collectd should run collectd-sensubility via collectd-exec
- enable_sensubility
- tripleo::profile::base::metrics::collectd::enable_sensubility:
get_param: CollectdEnableSensubility
tripleo::profile::base::metrics::collectd::sensubility::connection:
get_param: CollectdSensubilityConnection
tripleo::profile::base::metrics::collectd::sensubility::log_level:
get_param: CollectdSensubilityLogLevel
tripleo::profile::base::metrics::collectd::sensubility::client_name:
str_replace:
template: "%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
tripleo::profile::base::metrics::collectd::sensubility::client_address:
str_replace:
template: "%{hiera('NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
tripleo::profile::base::metrics::collectd::sensubility::keepalive_interval:
get_param: CollectdSensubilityKeepaliveInterval
tripleo::profile::base::metrics::collectd::sensubility::tmp_base_dir:
get_param: CollectdSensubilityTmpDir
tripleo::profile::base::metrics::collectd::sensubility::shell_path:
get_param: CollectdSensubilityShellPath
tripleo::profile::base::metrics::collectd::sensubility::worker_count:
get_param: CollectdSensubilityWorkerCount
tripleo::profile::base::metrics::collectd::sensubility::checks:
map_merge:
- {get_param: CollectdSensubilityChecks}
- check-container-health:
standalone: true
command: {get_param: CollectdContainerHealthCheckCommand}
interval: {get_param: CollectdContainerHealthCheckInterval}
handlers: {get_param: CollectdContainerHealthCheckHandlers}
occurrences: {get_param: CollectdContainerHealthCheckOccurrences}
refresh: {get_param: CollectdContainerHealthCheckRefresh}
- map_merge:
- if:
- sensubility_needs_sudo
- tripleo::profile::base::metrics::collectd::sensubility::exec_sudo_rule:
get_param: CollectdSensubilityExecSudoRule
- {}
- tripleo::profile::base::metrics::collectd::enable_sensubility:
get_param: CollectdEnableSensubility
tripleo::profile::base::metrics::collectd::sensubility::connection:
get_param: CollectdSensubilityConnection
tripleo::profile::base::metrics::collectd::sensubility::log_level:
get_param: CollectdSensubilityLogLevel
tripleo::profile::base::metrics::collectd::sensubility::client_name:
str_replace:
template: "%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
tripleo::profile::base::metrics::collectd::sensubility::client_address:
str_replace:
template: "%{hiera('NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
tripleo::profile::base::metrics::collectd::sensubility::keepalive_interval:
get_param: CollectdSensubilityKeepaliveInterval
tripleo::profile::base::metrics::collectd::sensubility::tmp_base_dir:
get_param: CollectdSensubilityTmpDir
tripleo::profile::base::metrics::collectd::sensubility::shell_path:
get_param: CollectdSensubilityShellPath
tripleo::profile::base::metrics::collectd::sensubility::worker_count:
get_param: CollectdSensubilityWorkerCount
tripleo::profile::base::metrics::collectd::sensubility::checks:
map_merge:
- {get_param: CollectdSensubilityChecks}
- check-container-health:
standalone: true
command: {get_param: CollectdContainerHealthCheckCommand}
interval: {get_param: CollectdContainerHealthCheckInterval}
handlers: {get_param: CollectdContainerHealthCheckHandlers}
occurrences: {get_param: CollectdContainerHealthCheckOccurrences}
refresh: {get_param: CollectdContainerHealthCheckRefresh}
- {}
service_config_settings: {}
# BEGIN DOCKER SETTINGS
puppet_config:
config_volume: collectd
puppet_tags: collectd_client_config
puppet_tags: collectd_client_config,exec
step_config: include ::tripleo::profile::base::metrics::collectd
config_image: {get_param: ContainerCollectdConfigImage}
kolla_config: