Merge "Add strict validation about boolean parameters"

This commit is contained in:
Zuul 2023-03-21 20:56:50 +00:00 committed by Gerrit Code Review
commit d12c547f5b
22 changed files with 72 additions and 3 deletions

View File

@ -209,6 +209,12 @@ class nova::api(
include nova::availability_zone
include nova::pci
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $sync_db)
validate_legacy(Boolean, 'validate_bool', $sync_db_api)
validate_legacy(Boolean, 'validate_bool', $db_online_data_migrations)
if !$nova_metadata_wsgi_enabled {
warning('Running nova metadata api via evenlet is deprecated and will be removed in Stein release.')
}

View File

@ -308,6 +308,13 @@ class nova::compute (
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $vnc_enabled)
validate_legacy(Boolean, 'validate_bool', $force_config_drive)
validate_legacy(Boolean, 'validate_bool', $instance_usage_audit)
$image_type_exclude_list_real = pick(join(any2array($image_type_exclude_list), ','), $facts['os_service_default'])
include nova::policy

View File

@ -294,6 +294,9 @@ class nova::compute::libvirt (
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $migration_support)
validate_legacy(Boolean, 'validate_bool', $manage_libvirt_services)
# cpu_mode has different defaults depending on hypervisor.
if !$cpu_mode {
case $virt_type {

View File

@ -14,6 +14,8 @@ class nova::compute::libvirt::networks(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $disable_default_network)
if $disable_default_network {
exec { 'libvirt-default-net-disable-autostart':
command => 'virsh net-autostart default --disable',

View File

@ -66,6 +66,7 @@ class nova::compute::libvirt::qemu(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $configure_qemu)
validate_legacy(Boolean, 'validate_bool', $vnc_tls)
validate_legacy(Boolean, 'validate_bool', $vnc_tls_verify)
validate_legacy(Boolean, 'validate_bool', $default_tls_verify)

View File

@ -57,6 +57,9 @@ class nova::compute::libvirt_guests (
include nova::params
include nova::deps
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
Anchor['nova::config::begin']
-> File<| tag =='libvirt-guests-file' |>
-> File_line<| tag == 'libvirt-guests-file_line'|>

View File

@ -103,6 +103,9 @@ class nova::compute::rbd (
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $ephemeral_storage)
validate_legacy(Boolean, 'validate_bool', $manage_ceph_client)
if $manage_ceph_client {
# Install ceph client libraries
package { 'ceph-client-package':

View File

@ -45,6 +45,8 @@ class nova::compute::spice(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $agent_enabled)
if $proxy_host {
$html5proxy_base_url = "${proxy_protocol}://${proxy_host}:${proxy_port}${proxy_path}"
nova_config {

View File

@ -40,6 +40,9 @@ class nova::conductor(
include nova::params
include nova::availability_zone
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
nova::generic_service { 'conductor':
enabled => $enabled,
manage_service => $manage_service,

View File

@ -114,6 +114,12 @@ class nova::cron::archive_deleted_rows (
include nova::deps
validate_legacy(Boolean, 'validate_bool', $until_complete)
validate_legacy(Boolean, 'validate_bool', $purge)
validate_legacy(Boolean, 'validate_bool', $all_cells)
validate_legacy(Boolean, 'validate_bool', $task_log)
validate_legacy(Boolean, 'validate_bool', $verbose)
if $until_complete {
$until_complete_real = ' --until-complete'
}

View File

@ -83,6 +83,9 @@ class nova::cron::purge_shadow_tables (
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $all_cells)
validate_legacy(Boolean, 'validate_bool', $verbose)
if $verbose {
$verbose_real = ' --verbose'
}

View File

@ -49,6 +49,8 @@ class nova::db::mysql(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $setup_cell0)
::openstacklib::db::mysql { 'nova':
user => $user,
password => $password,

View File

@ -40,6 +40,8 @@ class nova::db::postgresql(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $setup_cell0)
::openstacklib::db::postgresql { 'nova':
password => $password,
dbname => $dbname,

View File

@ -30,6 +30,8 @@ class nova::db::sync_api(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $cellv2_setup)
exec { 'nova-db-sync-api':
command => "/usr/bin/nova-manage ${extra_params} api_db sync",
user => $::nova::params::user,

View File

@ -41,6 +41,9 @@ define nova::generic_service(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
$nova_title = "nova-${name}"
# I need to mark that ths package should be

View File

@ -459,6 +459,8 @@ class nova(
include nova::deps
include nova::workarounds
validate_legacy(Boolean, 'validate_bool', $use_ssl)
validate_legacy(Array, 'validate_array', $enabled_ssl_apis)
if empty($enabled_ssl_apis) and $use_ssl {
warning('enabled_ssl_apis is empty but use_ssl is set to true')

View File

@ -174,6 +174,10 @@ class nova::migration::libvirt(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $override_uuid)
validate_legacy(Boolean, 'validate_bool', $configure_libvirt)
validate_legacy(Boolean, 'validate_bool', $configure_nova)
if $transport {
$transport_real = $transport
} else {

View File

@ -24,6 +24,8 @@ class nova::migration::qemu(
include nova::deps
validate_legacy(Boolean, 'validate_bool', $configure_qemu)
Anchor['nova::config::begin']
-> Augeas<| tag == 'qemu-conf-augeas'|>
-> Anchor['nova::config::end']
@ -32,7 +34,6 @@ class nova::migration::qemu(
~> Service<| tag == 'libvirt-qemu-service' |>
if $configure_qemu {
augeas { 'qemu-conf-migration-ports':
context => '/files/etc/libvirt/qemu.conf',
changes => [

View File

@ -97,6 +97,9 @@ class nova::scheduler(
include nova::params
include nova::availability_zone
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
if $query_placement_for_availability_zone != undef {
warning('The query_placement_for_availability_zone parameter is deprecated.')
}

View File

@ -35,9 +35,12 @@ class nova::serialproxy(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $enabled)
nova_config {
'serial_console/serialproxy_port': value => $serialproxy_port;
'serial_console/serialproxy_host': value => $serialproxy_host;
'serial_console/serialproxy_port': value => $serialproxy_port;
'serial_console/serialproxy_host': value => $serialproxy_host;
}
nova::generic_service { 'serialproxy':

View File

@ -39,6 +39,9 @@ class nova::spicehtml5proxy(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
# Nodes running spicehtml5proxy do *not* need (and in fact, don't care)
# about [spice]/enable to be set. This setting is for compute nodes,
# where we must select VNC or SPICE so that it can be passed on to

View File

@ -79,6 +79,11 @@ class nova::vncproxy(
include nova::deps
include nova::params
validate_legacy(Boolean, 'validate_bool', $enabled)
validate_legacy(Boolean, 'validate_bool', $manage_service)
validate_legacy(Boolean, 'validate_bool', $allow_noauth)
validate_legacy(Boolean, 'validate_bool', $allow_vencrypt)
if (!$allow_noauth and !$allow_vencrypt) {
fail('Either allow_noauth or allow_vencrypt must be true')
}