diff --git a/manifests/init.pp b/manifests/init.pp index a4cec36d..44cff2be 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -211,6 +211,30 @@ # Defaults to $facts['os_service_default'] # [*manila_enforce_scope*] # Defaults to $facts['os_service_default'] +# [*compute_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*compute_max_microversion*] +# Defaults to $facts['os_service_default'] +# [*placement_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*placement_max_microversion*] +# Defaults to $facts['os_service_default'] +# [*volume_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*volume_max_microversion*] +# Defaults to $facts['os_service_default'] +# [*key_manager_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*key_manager_max_microversion*] +# Defaults to $facts['os_service_default'] +# [*baremetal_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*baremetal_max_microversion*] +# Defaults to $facts['os_service_default'] +# [*share_min_microversion*] +# Defaults to $facts['os_service_default'] +# [*share_max_microversion*] +# Defaults to $facts['os_service_default'] # [*keystone_v3*] # Defaults to $facts['os_service_default'] # [*auth_version*] @@ -446,6 +470,7 @@ class tempest( Boolean $octavia_available = false, Boolean $barbican_available = false, Boolean $manila_available = false, + # scope enforcements $barbican_enforce_scope = $facts['os_service_default'], $cinder_enforce_scope = $facts['os_service_default'], $glance_enforce_scope = $facts['os_service_default'], @@ -458,6 +483,19 @@ class tempest( $designate_enforce_scope = $facts['os_service_default'], $octavia_enforce_scope = $facts['os_service_default'], $manila_enforce_scope = $facts['os_service_default'], + # microversions + $compute_min_microversion = $facts['os_service_default'], + $compute_max_microversion = $facts['os_service_default'], + $placement_min_microversion = $facts['os_service_default'], + $placement_max_microversion = $facts['os_service_default'], + $volume_min_microversion = $facts['os_service_default'], + $volume_max_microversion = $facts['os_service_default'], + $key_manager_min_microversion = $facts['os_service_default'], + $key_manager_max_microversion = $facts['os_service_default'], + $baremetal_min_microversion = $facts['os_service_default'], + $baremetal_max_microversion = $facts['os_service_default'], + $share_min_microversion = $facts['os_service_default'], + $share_max_microversion = $facts['os_service_default'], $keystone_v3 = $facts['os_service_default'], $auth_version = $facts['os_service_default'], $run_service_broker_tests = $facts['os_service_default'], @@ -697,6 +735,18 @@ class tempest( 'enforce_scope/nova': value => $nova_enforce_scope; 'enforce_scope/octavia': value => $octavia_enforce_scope; 'enforce_scope/placement': value => $placement_enforce_scope; + 'compute/min_microversion': value => $compute_min_microversion; + 'compute/max_microversion': value => $compute_max_microversion; + 'placement/min_microversion': value => $placement_min_microversion; + 'placement/max_microversion': value => $placement_max_microversion; + 'volume/min_microversion': value => $volume_min_microversion; + 'volume/max_microversion': value => $volume_max_microversion; + 'key_manager/min_microversion': value => $key_manager_min_microversion; + 'key_manager/max_microversion': value => $key_manager_max_microversion; + 'baremetal/min_microversion': value => $baremetal_min_microversion; + 'baremetal/max_microversion': value => $baremetal_max_microversion; + 'share/min_api_microversion': value => $share_min_microversion; + 'share/max_api_microversion': value => $share_max_microversion; 'cli/cli_dir': value => pick($cli_dir, $facts['os_service_default']); 'scenario/img_file': value => $img_file; 'scenario/img_disk_format': value => $img_disk_format; diff --git a/releasenotes/notes/micro-version-5eaee34371545e58.yaml b/releasenotes/notes/micro-version-5eaee34371545e58.yaml new file mode 100644 index 00000000..e96d3a43 --- /dev/null +++ b/releasenotes/notes/micro-version-5eaee34371545e58.yaml @@ -0,0 +1,12 @@ +--- +features: + - | + The tempest class now supports customizing options to determine minimum and + maximum API microversions available, for the following services. + + - compute (nova) + - placement (placement) + - volume (cinder) + - key_manager (barbican) + - baremetal (ironic) + - share (manila) diff --git a/spec/classes/tempest_init_spec.rb b/spec/classes/tempest_init_spec.rb index 26511552..da8b5282 100644 --- a/spec/classes/tempest_init_spec.rb +++ b/spec/classes/tempest_init_spec.rb @@ -333,6 +333,18 @@ describe 'tempest' do is_expected.to contain_tempest_config('enforce_scope/designate').with(:value => '') is_expected.to contain_tempest_config('enforce_scope/octavia').with(:value => '') is_expected.to contain_tempest_config('enforce_scope/manila').with(:value => '') + is_expected.to contain_tempest_config('compute/min_microversion').with(:value => '') + is_expected.to contain_tempest_config('compute/max_microversion').with(:value => '') + is_expected.to contain_tempest_config('placement/min_microversion').with(:value => '') + is_expected.to contain_tempest_config('placement/max_microversion').with(:value => '') + is_expected.to contain_tempest_config('volume/min_microversion').with(:value => '') + is_expected.to contain_tempest_config('volume/max_microversion').with(:value => '') + is_expected.to contain_tempest_config('key_manager/min_microversion').with(:value => '') + is_expected.to contain_tempest_config('key_manager/max_microversion').with(:value => '') + is_expected.to contain_tempest_config('baremetal/min_microversion').with(:value => '') + is_expected.to contain_tempest_config('baremetal/max_microversion').with(:value => '') + is_expected.to contain_tempest_config('share/min_api_microversion').with(:value => '') + is_expected.to contain_tempest_config('share/max_api_microversion').with(:value => '') is_expected.to contain_tempest_config('dns/nameservers').with(:value => '') is_expected.to contain_tempest_config('aws/ec2_url').with(:value => '') is_expected.to contain_tempest_config('aws/aws_region').with(:value => '')