From 2eec46b764f1df1b44caf009a4a3c83ac91fc7d7 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Fri, 3 Mar 2023 10:50:47 +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: I7259bf90853bd0ac24b7a60de9c43145c64015ba --- manifests/api.pp | 4 ++++ manifests/data.pp | 3 +++ manifests/init.pp | 2 ++ manifests/scheduler.pp | 3 +++ manifests/share.pp | 3 +++ 5 files changed, 15 insertions(+) diff --git a/manifests/api.pp b/manifests/api.pp index ce966d2e..62fd0599 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -89,6 +89,10 @@ class manila::api ( include manila::policy require keystone::client + validate_legacy(Boolean, 'validate_bool', $manage_service) + validate_legacy(Boolean, 'validate_bool', $enabled) + validate_legacy(Boolean, 'validate_bool', $sync_db) + if $::manila::params::api_package { package { 'manila-api': ensure => $package_ensure, diff --git a/manifests/data.pp b/manifests/data.pp index c1dc76a7..4c7cab83 100644 --- a/manifests/data.pp +++ b/manifests/data.pp @@ -36,6 +36,9 @@ class manila::data ( include manila::deps include manila::params + validate_legacy(Boolean, 'validate_bool', $manage_service) + validate_legacy(Boolean, 'validate_bool', $enabled) + if $::manila::params::data_package { package { 'manila-data': ensure => $package_ensure, diff --git a/manifests/init.pp b/manifests/init.pp index b147e447..53c13bf4 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -251,6 +251,8 @@ class manila ( include manila::deps include manila::db + validate_legacy(Boolean, 'validate_bool', $use_ssl) + if $use_ssl { if !$cert_file { fail('The cert_file parameter is required when use_ssl is set to true') diff --git a/manifests/scheduler.pp b/manifests/scheduler.pp index dce98505..d7caacca 100644 --- a/manifests/scheduler.pp +++ b/manifests/scheduler.pp @@ -30,6 +30,9 @@ class manila::scheduler ( include manila::deps include manila::params + validate_legacy(Boolean, 'validate_bool', $manage_service) + validate_legacy(Boolean, 'validate_bool', $enabled) + if $scheduler_driver { manila_config { 'DEFAULT/scheduler_driver': value => $scheduler_driver diff --git a/manifests/share.pp b/manifests/share.pp index d01fc719..99289090 100644 --- a/manifests/share.pp +++ b/manifests/share.pp @@ -24,6 +24,9 @@ class manila::share ( include manila::deps include manila::params + validate_legacy(Boolean, 'validate_bool', $manage_service) + validate_legacy(Boolean, 'validate_bool', $enabled) + if $::manila::params::share_package { package { 'manila-share': ensure => $package_ensure,