Add strict validation about boolean parameters

This ensures the parameters used by if-else logic accept only boolean
values because non-boolean can result in unexpected behavior.

Change-Id: I5d448885136f38b442aeca3feff75e288b00cc0c
This commit is contained in:
Takashi Kajinami 2023-03-16 13:32:57 +09:00
parent 37049a867d
commit 8f74b05f69
5 changed files with 14 additions and 0 deletions

View File

@ -72,6 +72,10 @@ class gnocchi::api (
include gnocchi::deps
include gnocchi::policy
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $sync_db)
package { 'gnocchi-api':
ensure => $package_ensure,
name => $::gnocchi::params::api_package_name,

View File

@ -53,6 +53,9 @@ class gnocchi::metricd (
include gnocchi::deps
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
gnocchi_config {
'metricd/workers': value => $workers;
'metricd/metric_processing_delay': value => $metric_processing_delay;

View File

@ -51,6 +51,9 @@ class gnocchi::statsd (
include gnocchi::deps
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
package { 'gnocchi-statsd':
ensure => $package_ensure,
name => $::gnocchi::params::statsd_package_name,

View File

@ -65,6 +65,8 @@ class gnocchi::storage::ceph(
include gnocchi::deps
validate_legacy(Boolean, 'validate_bool', $manage_rados)
if (is_service_default($ceph_keyring) and is_service_default($ceph_secret)) or (! $ceph_keyring and ! $ceph_secret) {
fail('You need to specify either gnocchi::storage::ceph::ceph_keyring or gnocchi::storage::ceph::ceph_secret.')
}

View File

@ -46,6 +46,8 @@ class gnocchi::storage::s3(
include gnocchi::deps
include gnocchi::params
validate_legacy(Boolean, 'validate_bool', $manage_boto3)
if $manage_boto3 {
ensure_packages('python-boto3', {
'ensure' => $package_ensure,