From c1c9f962cdca185c5a3df0c24f9522fb9d33b3ab Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Thu, 1 Feb 2024 18:42:47 +0900 Subject: [PATCH] Add support for min/max micro version options Change-Id: I812a90d668ecee95b9cada5818d66ac8cead0a35 --- manifests/init.pp | 50 +++++++++++++++++++ .../notes/micro-version-5eaee34371545e58.yaml | 12 +++++ spec/classes/tempest_init_spec.rb | 12 +++++ 3 files changed, 74 insertions(+) create mode 100644 releasenotes/notes/micro-version-5eaee34371545e58.yaml diff --git a/manifests/init.pp b/manifests/init.pp index 9cd9f482..493771f9 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*] @@ -442,6 +466,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'], @@ -454,6 +479,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'], @@ -690,6 +728,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 4058e3e4..daf566aa 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 => '')