Replace legacy facts and use fact hash

... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: I4cc9640c1e69802d10426e0ba287157034968702
This commit is contained in:
Takashi Kajinami 2023-03-02 12:40:20 +09:00
parent d37fb92c10
commit f578db95b4
4 changed files with 73 additions and 76 deletions

View File

@ -39,7 +39,7 @@
# [*public_network_name*] # [*public_network_name*]
# Defaults to undef # Defaults to undef
# [*neutron_api_extensions*] # [*neutron_api_extensions*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*identity_uri*] # [*identity_uri*]
# Defaults to undef # Defaults to undef
# [*identity_uri_v3*] # [*identity_uri_v3*]
@ -49,7 +49,7 @@
# [*lock_path*] # [*lock_path*]
# Defaults to '/var/lib/tempest' # Defaults to '/var/lib/tempest'
# [*log_file*] # [*log_file*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*debug*] # [*debug*]
# Defaults to false # Defaults to false
# [*use_stderr*] # [*use_stderr*]
@ -57,7 +57,7 @@
# [*use_syslog*] # [*use_syslog*]
# Defaults to false # Defaults to false
# [*logging_context_format_string*] # [*logging_context_format_string*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*username*] # [*username*]
# Defaults to undef # Defaults to undef
# [*password*] # [*password*]
@ -65,9 +65,9 @@
# [*project_name*] # [*project_name*]
# Defaults to undef # Defaults to undef
# [*user_domain_name*] # [*user_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*project_domain_name*] # [*project_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*alt_username*] # [*alt_username*]
# Defaults to undef # Defaults to undef
# [*alt_password*] # [*alt_password*]
@ -75,9 +75,9 @@
# [*alt_project_name*] # [*alt_project_name*]
# Defaults to undef # Defaults to undef
# [*alt_user_domain_name*] # [*alt_user_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*alt_project_domain_name*] # [*alt_project_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*admin_username*] # [*admin_username*]
# Defaults to undef # Defaults to undef
# [*admin_password*] # [*admin_password*]
@ -87,15 +87,15 @@
# [*admin_role*] # [*admin_role*]
# Defaults to undef # Defaults to undef
# [*admin_domain_name*] # [*admin_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*admin_user_domain_name*] # [*admin_user_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*admin_project_domain_name*] # [*admin_project_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*admin_system*] # [*admin_system*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*default_credentials_domain_name*] # [*default_credentials_domain_name*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*image_ref*] # [*image_ref*]
# Defaults to undef # Defaults to undef
# [*image_ref_alt*] # [*image_ref_alt*]
@ -107,7 +107,7 @@
# [*run_ssh*] # [*run_ssh*]
# Defaults to false # Defaults to false
# [*ssh_key_type*] # [*ssh_key_type*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*flavor_name*] # [*flavor_name*]
# Defaults to undef # Defaults to undef
# [*flavor_name_alt*] # [*flavor_name_alt*]
@ -186,15 +186,15 @@
# [*manila_available*] # [*manila_available*]
# Defaults to false # Defaults to false
# [*cinder_enforce_scope*] # [*cinder_enforce_scope*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*glance_enforce_scope*] # [*glance_enforce_scope*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*keystone_enforce_scope*] # [*keystone_enforce_scope*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*neutron_enforce_scope*] # [*neutron_enforce_scope*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*nova_enforce_scope*] # [*nova_enforce_scope*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*keystone_v3*] # [*keystone_v3*]
# Defaults to true # Defaults to true
# [*auth_version*] # [*auth_version*]
@ -202,7 +202,7 @@
# [*img_file*] # [*img_file*]
# Defaults to '/var/lib/tempest/cirros-0.4.0-x86_64-disk.img' # Defaults to '/var/lib/tempest/cirros-0.4.0-x86_64-disk.img'
# [*img_disk_format*] # [*img_disk_format*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*login_url*] # [*login_url*]
# Defaults to undef # Defaults to undef
# [*dashboard_url*] # [*dashboard_url*]
@ -221,20 +221,20 @@
# Defaults to false # Defaults to false
# [*tempest_roles*] # [*tempest_roles*]
# Should be an array. # Should be an array.
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*db_flavor_ref*] # [*db_flavor_ref*]
# Valid primary flavor to use in Trove tests. # Valid primary flavor to use in Trove tests.
# Defaults to undef # Defaults to undef
# [*db_flavor_name*] # [*db_flavor_name*]
# Defaults to undef # Defaults to undef
# [*designate_nameservers*] # [*designate_nameservers*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*ec2api_tester_roles*] # [*ec2api_tester_roles*]
# Defaults to ['Member'] # Defaults to ['Member']
# [*aws_ec2_url*] # [*aws_ec2_url*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*aws_region*] # [*aws_region*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*aws_image_id*] # [*aws_image_id*]
# Defualts to undef # Defualts to undef
# [*aws_ebs_image_id*] # [*aws_ebs_image_id*]
@ -252,23 +252,23 @@
# [*baremetal_enabled_hardware_types*] # [*baremetal_enabled_hardware_types*]
# Defaults to 'ipmi' # Defaults to 'ipmi'
# [*load_balancer_member_role*] # [*load_balancer_member_role*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*load_balancer_admin_role*] # [*load_balancer_admin_role*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*load_balancer_observer_role*] # [*load_balancer_observer_role*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*load_balancer_global_observer_role*] # [*load_balancer_global_observer_role*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*load_balancer_test_with_noop*] # [*load_balancer_test_with_noop*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*share_multitenancy_enabled*] # [*share_multitenancy_enabled*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*share_enable_protocols*] # [*share_enable_protocols*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*share_multi_backend*] # [*share_multi_backend*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# [*share_capability_storage_protocol*] # [*share_capability_storage_protocol*]
# Defaults to $::os_service_default # Defaults to $facts['os_service_default']
# #
# DEPREACTED PARAMETERS # DEPREACTED PARAMETERS
# [*glance_v1*] # [*glance_v1*]
@ -302,7 +302,7 @@ class tempest(
# #
$configure_networks = true, $configure_networks = true,
$public_network_name = undef, $public_network_name = undef,
$neutron_api_extensions = $::os_service_default, $neutron_api_extensions = $facts['os_service_default'],
# Horizon dashboard config # Horizon dashboard config
$login_url = undef, $login_url = undef,
@ -315,36 +315,36 @@ class tempest(
$identity_uri_v3 = undef, $identity_uri_v3 = undef,
$cli_dir = undef, $cli_dir = undef,
$lock_path = '/var/lib/tempest', $lock_path = '/var/lib/tempest',
$log_file = $::os_service_default, $log_file = $facts['os_service_default'],
$debug = false, $debug = false,
$use_stderr = true, $use_stderr = true,
$use_syslog = false, $use_syslog = false,
$logging_context_format_string = $::os_service_default, $logging_context_format_string = $facts['os_service_default'],
$attach_encrypted_volume = false, $attach_encrypted_volume = false,
# non admin user # non admin user
$username = undef, $username = undef,
$password = undef, $password = undef,
$project_name = undef, $project_name = undef,
$user_domain_name = $::os_service_default, $user_domain_name = $facts['os_service_default'],
$project_domain_name = $::os_service_default, $project_domain_name = $facts['os_service_default'],
# another non-admin user # another non-admin user
$alt_username = undef, $alt_username = undef,
$alt_password = undef, $alt_password = undef,
$alt_project_name = undef, $alt_project_name = undef,
$alt_user_domain_name = $::os_service_default, $alt_user_domain_name = $facts['os_service_default'],
$alt_project_domain_name = $::os_service_default, $alt_project_domain_name = $facts['os_service_default'],
# admin user # admin user
$admin_username = undef, $admin_username = undef,
$admin_password = undef, $admin_password = undef,
$admin_project_name = undef, $admin_project_name = undef,
$admin_role = undef, $admin_role = undef,
$admin_domain_name = $::os_service_default, $admin_domain_name = $facts['os_service_default'],
$admin_user_domain_name = $::os_service_default, $admin_user_domain_name = $facts['os_service_default'],
$admin_project_domain_name = $::os_service_default, $admin_project_domain_name = $facts['os_service_default'],
$admin_system = $::os_service_default, $admin_system = $facts['os_service_default'],
$default_credentials_domain_name = $::os_service_default, $default_credentials_domain_name = $facts['os_service_default'],
# roles fo the users created by tempest # roles fo the users created by tempest
$tempest_roles = $::os_service_default, $tempest_roles = $facts['os_service_default'],
# image information # image information
$image_ref = undef, $image_ref = undef,
$image_ref_alt = undef, $image_ref_alt = undef,
@ -356,7 +356,7 @@ class tempest(
$flavor_name_alt = undef, $flavor_name_alt = undef,
$compute_build_interval = undef, $compute_build_interval = undef,
$run_ssh = false, $run_ssh = false,
$ssh_key_type = $::os_service_default, $ssh_key_type = $facts['os_service_default'],
# testing features that are supported # testing features that are supported
$resize_available = false, $resize_available = false,
$use_dynamic_credentials = undef, $use_dynamic_credentials = undef,
@ -399,11 +399,11 @@ class tempest(
$octavia_available = false, $octavia_available = false,
$barbican_available = false, $barbican_available = false,
$manila_available = false, $manila_available = false,
$cinder_enforce_scope = $::os_service_default, $cinder_enforce_scope = $facts['os_service_default'],
$glance_enforce_scope = $::os_service_default, $glance_enforce_scope = $facts['os_service_default'],
$keystone_enforce_scope = $::os_service_default, $keystone_enforce_scope = $facts['os_service_default'],
$neutron_enforce_scope = $::os_service_default, $neutron_enforce_scope = $facts['os_service_default'],
$nova_enforce_scope = $::os_service_default, $nova_enforce_scope = $facts['os_service_default'],
$keystone_v3 = true, $keystone_v3 = true,
$auth_version = 'v3', $auth_version = 'v3',
$run_service_broker_tests = false, $run_service_broker_tests = false,
@ -412,13 +412,13 @@ class tempest(
$manage_tests_packages = false, $manage_tests_packages = false,
# scenario options # scenario options
$img_file = '/var/lib/tempest/cirros-0.4.0-x86_64-disk.img', $img_file = '/var/lib/tempest/cirros-0.4.0-x86_64-disk.img',
$img_disk_format = $::os_service_default, $img_disk_format = $facts['os_service_default'],
# designate options # designate options
$designate_nameservers = $::os_service_default, $designate_nameservers = $facts['os_service_default'],
# ec2api options # ec2api options
$ec2api_tester_roles = ['Member'], $ec2api_tester_roles = ['Member'],
$aws_ec2_url = $::os_service_default, $aws_ec2_url = $facts['os_service_default'],
$aws_region = $::os_service_default, $aws_region = $facts['os_service_default'],
$aws_image_id = undef, $aws_image_id = undef,
$aws_ebs_image_id = undef, $aws_ebs_image_id = undef,
# heat options # heat options
@ -430,16 +430,16 @@ class tempest(
$baremetal_driver = 'fake', $baremetal_driver = 'fake',
$baremetal_enabled_hardware_types = 'ipmi', $baremetal_enabled_hardware_types = 'ipmi',
# octavia options # octavia options
$load_balancer_member_role = $::os_service_default, $load_balancer_member_role = $facts['os_service_default'],
$load_balancer_admin_role = $::os_service_default, $load_balancer_admin_role = $facts['os_service_default'],
$load_balancer_observer_role = $::os_service_default, $load_balancer_observer_role = $facts['os_service_default'],
$load_balancer_global_observer_role = $::os_service_default, $load_balancer_global_observer_role = $facts['os_service_default'],
$load_balancer_test_with_noop = $::os_service_default, $load_balancer_test_with_noop = $facts['os_service_default'],
# manila options # manila options
$share_multitenancy_enabled = $::os_service_default, $share_multitenancy_enabled = $facts['os_service_default'],
$share_enable_protocols = $::os_service_default, $share_enable_protocols = $facts['os_service_default'],
$share_multi_backend = $::os_service_default, $share_multi_backend = $facts['os_service_default'],
$share_capability_storage_protocol = $::os_service_default, $share_capability_storage_protocol = $facts['os_service_default'],
# DEPRECATED PARAMETERS # DEPRECATED PARAMETERS
$glance_v1 = undef, $glance_v1 = undef,
$glance_v2 = undef, $glance_v2 = undef,
@ -587,8 +587,8 @@ class tempest(
'identity/ca_certificates_file': value => $ca_certificates_file; 'identity/ca_certificates_file': value => $ca_certificates_file;
'identity/disable_ssl_certificate_validation': value => $disable_ssl_validation; 'identity/disable_ssl_certificate_validation': value => $disable_ssl_validation;
'identity-feature-enabled/api_v3': value => $keystone_v3; 'identity-feature-enabled/api_v3': value => $keystone_v3;
'image-feature-enabled/api_v1': value => pick($glance_v1, $::os_service_default); 'image-feature-enabled/api_v1': value => pick($glance_v1, $facts['os_service_default']);
'image-feature-enabled/api_v2': value => pick($glance_v2, $::os_service_default); 'image-feature-enabled/api_v2': value => pick($glance_v2, $facts['os_service_default']);
'l2gw/l2gw_switch': value => $l2gw_switch; 'l2gw/l2gw_switch': value => $l2gw_switch;
'network-feature-enabled/api_extensions': value => join(any2array($neutron_api_extensions), ','); 'network-feature-enabled/api_extensions': value => join(any2array($neutron_api_extensions), ',');
'network/public_network_id': value => $public_network_id; 'network/public_network_id': value => $public_network_id;

View File

@ -3,7 +3,7 @@ class tempest::params {
include openstacklib::defaults include openstacklib::defaults
$pip_command = 'pip3' $pip_command = 'pip3'
case $::osfamily { case $facts['os']['family'] {
'RedHat': { 'RedHat': {
$dev_packages = [ $dev_packages = [
'python3-devel', 'python3-devel',
@ -53,7 +53,7 @@ class tempest::params {
'python3-virtualenv', 'python3-virtualenv',
'python3-pip', 'python3-pip',
] ]
if $::operatingsystem == 'Debian' { if $facts['os']['name'] == 'Debian' {
$python_telemetry_tests = 'telemetry-tempest-plugin' $python_telemetry_tests = 'telemetry-tempest-plugin'
$python_cinder_tests = 'cinder-tempest-plugin' $python_cinder_tests = 'cinder-tempest-plugin'
$python_designate_tests = 'designate-tempest-plugin' $python_designate_tests = 'designate-tempest-plugin'
@ -109,8 +109,7 @@ class tempest::params {
} }
} }
default: { default: {
fail("Unsupported osfamily: ${::osfamily} operatingsystem: ${::operatingsystem}, \ fail("Unsupported osfamily: ${facts['os']['family']}")
module ${module_name} only support osfamily RedHat and Debian")
} }
} }
} }

View File

@ -515,12 +515,10 @@ describe 'tempest' do
}).each do |os,facts| }).each do |os,facts|
context "on #{os}" do context "on #{os}" do
let (:facts) do let (:facts) do
facts.merge!(OSDefaults.get_facts({ facts.merge!(OSDefaults.get_facts())
:concat_basedir => '/var/lib/puppet/concat',
}))
end end
let(:platform_params) do let(:platform_params) do
case facts[:osfamily] case facts[:os]['family']
when 'Debian' when 'Debian'
{ :dev_packages => ['python3-dev', { :dev_packages => ['python3-dev',
'libxslt1-dev', 'libxslt1-dev',
@ -553,7 +551,7 @@ describe 'tempest' do
end end
it_behaves_like 'tempest' it_behaves_like 'tempest'
if facts[:operatingsystem] != 'Ubuntu' if facts[:os]['name'] != 'Ubuntu'
it_behaves_like 'tempest with plugins packages' it_behaves_like 'tempest with plugins packages'
end end
end end

View File

@ -70,7 +70,7 @@ describe 'tempest::magnum' do
end end
it_configures 'tempest magnum' it_configures 'tempest magnum'
case facts[:osfamily] case facts[:os]['family']
when 'RedHat' when 'RedHat'
it_configures 'installs test packages' it_configures 'installs test packages'
end end