From da173126db0be67f9bb3bf1f6c30c036eec75e0d Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Fri, 8 Mar 2024 12:50:24 +0900 Subject: [PATCH] Deprecate support for plugins of inactive project EC2 API, Murano and Sahara were marked inactive during this cycle and these project won't get 2024.1 release. Because we are retiring the modules for these components, we should deprecate support for the associated tempest plugins. Depends-on: https://review.opendev.org/912037 Change-Id: Id032afcdee7bff6078628645945a4452f91aef1a --- lib/puppet/type/tempest_ec2_credentials.rb | 2 +- manifests/init.pp | 155 ++++++++---------- manifests/params.pp | 6 - ...ate-inactive-caracal-a875618b0e91b948.yaml | 9 + spec/classes/tempest_init_spec.rb | 65 +------- 5 files changed, 78 insertions(+), 159 deletions(-) create mode 100644 releasenotes/notes/deprecate-inactive-caracal-a875618b0e91b948.yaml diff --git a/lib/puppet/type/tempest_ec2_credentials.rb b/lib/puppet/type/tempest_ec2_credentials.rb index 5016efd0..460b41c0 100644 --- a/lib/puppet/type/tempest_ec2_credentials.rb +++ b/lib/puppet/type/tempest_ec2_credentials.rb @@ -3,7 +3,7 @@ Puppet::Type.newtype(:tempest_ec2_credentials) do ensurable newparam(:name, :namevar => true) do - desc 'Name of the credentials.' + desc 'Name of the credentials. (DEPRECATED)' end newparam(:user) do diff --git a/manifests/init.pp b/manifests/init.pp index 44cff2be..945d4e29 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -122,9 +122,6 @@ # Defaults to undef # [*public_router_id*] # Defaults to undef -# [*sahara_plugins*] -# (optional) List of enabled Sahara plugins -# Defaults to $facts['os_service_default'] # [*cinder_available*] # Defaults to true # [*cinder_backup_available*] @@ -157,22 +154,16 @@ # Defaults to false # [*nova_available*] # Defaults to true -# [*murano_available*] -# Defaults to false # [*watcher_available*] # Defaults to false # [*zaqar_available*] # Defaults to false -# [*ec2api_available*] -# Defaults to false # [*mistral_available*] # Defaults to false # [*vitrage_available*] # Defaults to false # [*run_service_broker_tests*] # Defaults to $facts['os_service_default'] -# [*sahara_available*] -# Defaults to false # [*swift_available*] # Defaults to false # [*trove_available*] @@ -284,16 +275,6 @@ # Defaults to undef # [*designate_nameservers*] # Defaults to $facts['os_service_default'] -# [*ec2api_tester_roles*] -# Defaults to ['Member'] -# [*aws_ec2_url*] -# Defaults to $facts['os_service_default'] -# [*aws_region*] -# Defaults to $facts['os_service_default'] -# [*aws_image_id*] -# Defualts to undef -# [*aws_ebs_image_id*] -# Defaults to undef # [*heat_image_ref*] # Defaults to undef # [*heat_image_name*] @@ -338,6 +319,24 @@ # Defaults to undef # [*login_url*] # Defaults to undef +# [*ec2api_available*] +# Defaults to undef +# [*ec2api_tester_roles*] +# Defaults to undef +# [*aws_ec2_url*] +# Defaults to undef +# [*aws_region*] +# Defaults to undef +# [*aws_image_id*] +# Defaults to undef +# [*aws_ebs_image_id*] +# Defaults to undef +# [*murano_available*] +# Defualts to undef +# [*sahara_available*] +# Defualts to undef +# [*sahara_plugins*] +# Defualts to undef # class tempest( $package_ensure = 'present', @@ -434,8 +433,6 @@ class tempest( # neutron config $public_network_id = undef, $public_router_id = undef, - # Sahara config - $sahara_plugins = $facts['os_service_default'], # Trove config $db_flavor_ref = undef, Optional[String[1]] $db_flavor_name = undef, @@ -456,15 +453,12 @@ class tempest( Boolean $neutron_vpnaas_available = false, Boolean $neutron_dr_available = false, Boolean $nova_available = true, - Boolean $murano_available = false, - Boolean $sahara_available = false, Boolean $swift_available = false, Boolean $trove_available = false, Boolean $ironic_available = false, Boolean $ironic_inspector_available = false, Boolean $watcher_available = false, Boolean $zaqar_available = false, - Boolean $ec2api_available = false, Boolean $mistral_available = false, Boolean $vitrage_available = false, Boolean $octavia_available = false, @@ -507,12 +501,6 @@ class tempest( $img_disk_format = $facts['os_service_default'], # designate options $designate_nameservers = $facts['os_service_default'], - # ec2api options - Array[String[1]] $ec2api_tester_roles = ['Member'], - $aws_ec2_url = $facts['os_service_default'], - $aws_region = $facts['os_service_default'], - $aws_image_id = undef, - $aws_ebs_image_id = undef, # heat options $heat_image_ref = undef, Optional[String[1]] $heat_image_name = undef, @@ -540,6 +528,15 @@ class tempest( $tempest_config_file = undef, $cli_dir = undef, $login_url = undef, + Optional[Boolean] $ec2api_available = undef, + Optional[Boolean] $murano_available = undef, + Optional[Boolean] $sahara_available = undef, + $ec2api_tester_roles = undef, + $aws_ec2_url = undef, + $aws_region = undef, + $aws_image_id = undef, + $aws_ebs_image_id = undef, + $sahara_plugins = undef, ) { [ 'glance_v2', 'cli_dir', 'login_url' ].each |String $deprecated_opt| { @@ -557,6 +554,27 @@ class tempest( } } + if $ec2api_available { + warning('EC2API support has been deprecated and has no effect now.') + } + if $murano_available { + warning('Murano support has been deprecated and has no effect now.') + } + if $sahara_available { + warning('Sahara support has been deprecated and has no effect now.') + } + + [ + 'ec2api_available', 'murano_available', 'sahara_available', + 'ec2api_tester_roles', 'aws_ec2_url', 'aws_region', + 'aws_image_id', 'aws_ebs_image_id', 'sahara_plugins' + ].each |String $deprecated_plugin_opt| { + if getvar($deprecated_plugin_opt) != undef { + warning("The ${deprecated_plugin_opt} parameter has been deprecated and has no effect.") + } + } + + include tempest::params include openstacklib::openstackclient @@ -712,15 +730,12 @@ class tempest( 'service_available/mistral': value => $mistral_available; 'service_available/vitrage': value => $vitrage_available; 'service_available/nova': value => $nova_available; - 'service_available/murano': value => $murano_available; - 'service_available/sahara': value => $sahara_available; 'service_available/swift': value => $swift_available; 'service_available/trove': value => $trove_available; 'service_available/ironic': value => $ironic_available; 'service_available/ironic_inspector': value => $ironic_inspector_available; 'service_available/watcher': value => $watcher_available; 'service_available/zaqar': value => $zaqar_available; - 'service_available/ec2api': value => $ec2api_available; 'service_available/octavia': value => $octavia_available; 'enforce_scope/barbican': value => $barbican_enforce_scope; 'enforce_scope/cinder': value => $cinder_enforce_scope; @@ -755,11 +770,6 @@ class tempest( 'compute-feature-enabled/resize': value => $resize_available; # designate-tempest-plugin 'dns/nameservers': value => join(any2array($designate_nameservers), ','); - # ec2api-tempest-plugin - 'aws/ec2_url': value => $aws_ec2_url; - 'aws/aws_region': value => $aws_region; - 'aws/image_id': value => $aws_image_id; - 'aws/ebs_image_id': value => $aws_ebs_image_id; # heat-tempest-plugin 'heat_plugin/auth_url': value => $identity_uri_v3; # TODO(tkajinam): auth_version does not affect vN format (eg v3) and @@ -803,6 +813,24 @@ class tempest( 'barbican_rbac_scope_verification/enforce_scope': ensure => absent; } + tempest_config { + # ec2api-tempest-plugin + 'service_available/ec2api': ensure => absent; + 'aws/ec2_url': ensure => absent; + 'aws/aws_region': ensure => absent; + 'aws/image_id': ensure => absent; + 'aws/ebs_image_id': ensure => absent; + 'aws/instance_type': ensure => absent; + 'aws/instance_type_alt': ensure => absent; + 'aws/aws_secret': ensure => absent; + 'aws/aws_access': ensure => absent; + # murano-tempest-plugin + 'service_available/murano': ensure => absent; + # sahara-tempest-plugin + 'service_available/sahara': ensure => absent; + 'data-processing-feature-enabled/plugins': ensure => absent; + } + oslo::concurrency { 'tempest_config': lock_path => $lock_path } oslo::log { 'tempest_config': @@ -856,13 +884,6 @@ class tempest( tag => ['openstack', 'tempest-package'], } } - if $murano_available and $::tempest::params::python_murano_tests { - package { 'python-murano-tests-tempest': - ensure => present, - name => $::tempest::params::python_murano_tests, - tag => ['openstack', 'tempest-package'], - } - } if $neutron_available and $::tempest::params::python_neutron_tests { package { 'python-neutron-tests-tempest': ensure => present, @@ -877,13 +898,6 @@ class tempest( } } } - if $sahara_available and $::tempest::params::python_sahara_tests { - package { 'python-sahara-tests-tempest': - ensure => present, - name => $::tempest::params::python_sahara_tests, - tag => ['openstack', 'tempest-package'], - } - } if $trove_available and $::tempest::params::python_trove_tests { package { 'python-trove-tests-tempest': ensure => present, @@ -933,13 +947,6 @@ class tempest( tag => ['openstack', 'tempest-package'], } } - if $ec2api_available and $::tempest::params::python_ec2api_tests { - package { 'python-ec2-api-tests-tempest': - ensure => present, - name => $::tempest::params::python_ec2api_tests, - tag => ['openstack', 'tempest-package'], - } - } if $barbican_available and $::tempest::params::python_barbican_tests { package { 'python-barbican-tests-tempest': ensure => present, @@ -1074,34 +1081,4 @@ class tempest( must be provided.') } } - - if $sahara_available { - tempest_config { - 'data-processing-feature-enabled/plugins': value => $sahara_plugins, - } - } - - if $ec2api_available { - tempest_config { - 'aws/instance_type': value => $flavor_ref; - 'aws/instance_type_alt': value => $flavor_ref_alt; - } - keystone_user { 'ec2api-tester' : - ensure => present, - enabled => true, - } - keystone_user_role { 'ec2api-tester@openstack' : - ensure => present, - roles => $ec2api_tester_roles, - } - tempest_ec2_credentials { 'ec2_test_creds': - ensure => present, - tempest_conf_path => $tempest_conf, - user => 'ec2api-tester', - project => 'openstack', - } - Tempest_config<||> -> Tempest_ec2_credentials['ec2_test_creds'] - Keystone_user_role<||> -> Tempest_ec2_credentials['ec2_test_creds'] - } - } diff --git a/manifests/params.pp b/manifests/params.pp index 0ccc0ece..3bf75ac9 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -24,15 +24,12 @@ class tempest::params { $python_magnum_tests = 'python3-magnum-tests-tempest' $python_mistral_tests = 'python3-mistral-tests-tempest' $python_vitrage_tests = 'python3-vitrage-tests-tempest' - $python_murano_tests = 'python3-murano-tests-tempest' $python_neutron_tests = 'python3-neutron-tests-tempest' $python_l2gw_tests = 'python3-networking-l2gw-tests-tempest' - $python_sahara_tests = 'python3-sahara-tests-tempest' $python_trove_tests = 'python3-trove-tests-tempest' $python_watcher_tests = 'python3-watcher-tests-tempest' $python_zaqar_tests = 'python3-zaqar-tests-tempest' $python_octavia_tests = 'python3-octavia-tests-tempest' - $python_ec2api_tests = 'python3-ec2api-tests-tempest' $python_barbican_tests = 'python3-barbican-tests-tempest' $python_manila_tests = 'python3-manila-tests-tempest' $package_name = 'openstack-tempest' @@ -62,15 +59,12 @@ class tempest::params { $python_magnum_tests = 'magnum-tempest-plugin' $python_mistral_tests = 'mistral-tempest-plugin' $python_vitrage_tests = 'vitrage-tempest-plugin' - $python_murano_tests = 'murano-tempest-plugin' $python_neutron_tests = 'neutron-tempest-plugin' $python_l2gw_tests = undef - $python_sahara_tests = undef $python_trove_tests = 'trove-tempest-plugin' $python_watcher_tests = 'watcher-tempest-plugin' $python_zaqar_tests = 'zaqar-tempest-plugin' $python_octavia_tests = 'octavia-tempest-plugin' - $python_ec2api_tests = undef $python_barbican_tests = 'barbican-tempest-plugin' $python_manila_tests = 'manila-tempest-plugin' $package_name = 'tempest' diff --git a/releasenotes/notes/deprecate-inactive-caracal-a875618b0e91b948.yaml b/releasenotes/notes/deprecate-inactive-caracal-a875618b0e91b948.yaml new file mode 100644 index 00000000..029e7cee --- /dev/null +++ b/releasenotes/notes/deprecate-inactive-caracal-a875618b0e91b948.yaml @@ -0,0 +1,9 @@ +--- +deprecations: + - | + Support for the following tempest plugins has been deprecated and has no + effect now. + + - ec2api-tempest-plugin + - murano-tempest-plugin + - sahara-tests diff --git a/spec/classes/tempest_init_spec.rb b/spec/classes/tempest_init_spec.rb index da8b5282..bf334a9e 100644 --- a/spec/classes/tempest_init_spec.rb +++ b/spec/classes/tempest_init_spec.rb @@ -125,21 +125,6 @@ describe 'tempest' do end end - context 'with sahara_plugins' do - let :params do - { - :configure_images => false, - :configure_networks => false, - :sahara_available => true, - :sahara_plugins => ['vanilla'], - } - end - - it 'properly configures Sahara plugins in tempest.conf' do - is_expected.to contain_tempest_config('data-processing-feature-enabled/plugins').with_value(['vanilla']) - end - end - context 'with reseller_admin_role' do let :params do { @@ -168,26 +153,6 @@ describe 'tempest' do end end - context 'with ec2api_available parameter' do - let :params do - { - :configure_images => false, - :configure_networks => false, - :ec2api_available => true, - } - end - - it 'creates ec2 credentials' do - is_expected.to contain_tempest_ec2_credentials('ec2_test_creds').with( - :ensure => 'present', - :tempest_conf_path => '/var/lib/tempest/etc/tempest.conf', - :user => 'ec2api-tester', - :project => 'openstack' - ) - end - - end - context 'with parameters' do let :params do { :configure_images => true, @@ -308,8 +273,6 @@ describe 'tempest' do is_expected.to contain_tempest_config('service_available/mistral').with(:value => false) is_expected.to contain_tempest_config('service_available/vitrage').with(:value => false) is_expected.to contain_tempest_config('service_available/nova').with(:value => true) - is_expected.to contain_tempest_config('service_available/sahara').with(:value => false) - is_expected.to contain_tempest_config('service_available/murano').with(:value => false) is_expected.to contain_tempest_config('service_available/swift').with(:value => false) is_expected.to contain_tempest_config('service_available/trove').with(:value => false) is_expected.to contain_tempest_config('service_available/ironic').with(:value => false) @@ -346,10 +309,6 @@ describe 'tempest' do 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 => '') - is_expected.to contain_tempest_config('aws/image_id').with(:value => nil) - is_expected.to contain_tempest_config('aws/ebs_image_id').with(:value => nil) is_expected.to contain_tempest_config('heat_plugin/auth_url').with(:value => '') is_expected.to contain_tempest_config('heat_plugin/auth_version').with(:value => '') is_expected.to contain_tempest_config('heat_plugin/admin_password').with_secret( true ) @@ -562,10 +521,6 @@ describe 'tempest' do is_expected.to_not contain_package('python-heat-tests-tempest') end - it "should not install optional sahara tests package" do - is_expected.to_not contain_package('python-sahara-tests-tempest') - end - it "should install neutron but not *aas tests packages" do is_expected.to contain_package('python-neutron-tests-tempest').with( :name => platform_params[:python_neutron_tests] @@ -585,22 +540,6 @@ describe 'tempest' do ) end end - - context 'with when managing tests packages for sahara (optional service)' do - before :each do - params.merge!({ :sahara_available => true }) - end - - it "should install sahara tests package if available" do - if platform_params[:python_sahara_tests] - is_expected.to contain_package('python-sahara-tests-tempest').with( - :name => platform_params[:python_sahara_tests] - ) - else - is_expected.to_not contain_package('python-sahara-tests-tempest') - end - end - end end on_supported_os({ @@ -627,7 +566,7 @@ describe 'tempest' do :python_heat_tests => 'heat-tempest-plugin', :python_keystone_tests => 'keystone-tempest-plugin', :python_neutron_tests => 'neutron-tempest-plugin', - :python_sahara_tests => false } + } when 'RedHat' { :dev_packages => ['python3-devel', 'libxslt-devel', @@ -642,7 +581,7 @@ describe 'tempest' do :python_heat_tests => 'python3-heat-tests-tempest', :python_keystone_tests => 'python3-keystone-tests-tempest', :python_neutron_tests => 'python3-neutron-tests-tempest', - :python_sahara_tests => 'python3-sahara-tests-tempest' } + } end end