From 8f74b05f69aeeecdde189e500164f554b9d7d9a6 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Thu, 16 Mar 2023 13:32:57 +0900 Subject: [PATCH] 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 --- manifests/api.pp | 4 ++++ manifests/metricd.pp | 3 +++ manifests/statsd.pp | 3 +++ manifests/storage/ceph.pp | 2 ++ manifests/storage/s3.pp | 2 ++ 5 files changed, 14 insertions(+) diff --git a/manifests/api.pp b/manifests/api.pp index 022e07aa..0446c611 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -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, diff --git a/manifests/metricd.pp b/manifests/metricd.pp index 1f325a1b..6cef391d 100644 --- a/manifests/metricd.pp +++ b/manifests/metricd.pp @@ -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; diff --git a/manifests/statsd.pp b/manifests/statsd.pp index 2f985473..5b38dae4 100644 --- a/manifests/statsd.pp +++ b/manifests/statsd.pp @@ -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, diff --git a/manifests/storage/ceph.pp b/manifests/storage/ceph.pp index d3d4c85c..f86c563b 100644 --- a/manifests/storage/ceph.pp +++ b/manifests/storage/ceph.pp @@ -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.') } diff --git a/manifests/storage/s3.pp b/manifests/storage/s3.pp index e103776a..2fd4ba02 100644 --- a/manifests/storage/s3.pp +++ b/manifests/storage/s3.pp @@ -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,