Current Series Release Notes


New Features

  • Add a new argument --network to specify either a name or an id of a network that will be set in tempest.conf and used by tempest to run tests.

  • From now on, python-tempestconf will set the following option by default

    • CONF.scenario.dhcp_client dhcpcd

    The reason is that python-tempestconf sets cirros >= 0.6.0 as the default image and cirros version since 0.6.0 use dhcpcd as a default dhcp client.

Deprecation Notes

  • Argument --network-id is deprecated and will be removed in the future. --network-id is replaced with --network that can be used to specify both, network id or network name.

Bug Fixes

  • python-tempestconf will prioritize the external network named public when auto-discovering an external network for tempest. The public network is the network we end up using in most of the cases. This will help avoid potential conflicts with other available external networks that are not meant to be used by tempest. If no external network with name public is found, the network discovered last will be used.


Upgrade Notes

  • The following option has changed its default value from

    • CONF.auth.tempest_roles _member_


    • CONF.auth.tempest_roles member

  • The following option is no longer set by default

    • CONF.compute-feature-enabled.live_migration false

    The default value for this option in Tempest is true.


New Features

  • discover-tempest-config can now automatically set CONF.dashboard.disable_ssl_certificate_validation option for horizon service.

Upgrade Notes

  • python-tempestconf follows tempest’s deprecation of CONF.scenario.img_dir option and removes that option from the automatic tempest.conf generation. python-tempestconf will set an absolute path to the image in CONF.scenario.img_file option from now on.


New Features

  • discover-tempest-config can now automatically set the following 2 tempest options

    • CONF.identity.disable_ssl_certificate_validation

    • CONF.identity.ca_certificates_file

    The mentioned options are set based on cloud’s request verify arguments (verify and cert) read (either set as environment variables or passed via CLI) by openstack package.

  • discover-tempest-config can now automatically set the following 2 tempest options

    • CONF.placement.min_microversion

    • CONF.placement.max_microversion

    The mentioned options are set based on the placement service response.

Upgrade Notes

  • Starting by Rocky the following options are deprecated by Tempest

    • CONF.volume-feature-enabled.api_v2

    • CONF.volume-feature-enabled.api_v3

    and have no effect on triggering volume v2/v3 API tests. CONF.volume.catalog_type is used for that instead.

    The options are deleted from Tempest by

    Tempest sets CONF.volume.catalog_type to ‘volumev3’ by default so no action in python-tempestconf is needed considering the current API is v3. In case a user wants to run tempest tests against volume v2 API, it’s needed to set catalog_type to ‘volumev2’ e.g. via overrides using python-tempestconf’s CLI or manually in the generated tempest.conf file.

Bug Fixes

  • Passing a value from --insecure argument is fixed. Previously --insecure didn’t have any effect on discover-tempest-config and its behavior which lead to failing requests due to certificates verify failures. That is fixed now. Now the –insecure’s value will be stored in the internal Credentials class and safely pased in requests querying the cloud.


New Features

  • discover-tempest-config can now discover Barbican service automatically, and configures service_available/barbican based on that discovery result so that it can enable/disable tests for Barbican based on deployment status.

  • Tempestconf now creates users with name that ends with ‘_tempestconf’. This change makes sure that collisions are avoided. For example, if the system already contains a user named ‘demo_tempestconf’ then it was probably created by tempestconf.

Upgrade Notes

  • Python 2.7 and python 3.5 support have been dropped. Last release of python-tempestconf to support python 2.7 and python 3.5 is python-tempestconf 2.5.0. The minimum version of Python now supported by python-tempestconf is Python 3.6.


Other Notes

  • It removes the support of nova network. It also removes the setting of following config in tempest.conf: - compute.fixed_network_name


New Features

  • discover-tempest-config can now discover Designate service automatically, and configures service_available/designate based on that discovery result so that it can enable/disable tests for Designate based on deployment status.

Bug Fixes

  • Rename boto section to aws one for ec2_url and s3_url options used by ec2api-tempest-plugin.


New Features

  • When downloading of new file fails due to short and temporary network issue then python-tempestconf does not end immediately with an error but rather waits a few seconds and retries to download the file again.

  • Openstacksdk module superseded os-client-config module, therefore it is now used for parsing cloud credentials instead of os-client-config module.


Deprecation Notes

  • The api_extensions config option in the compute-feature-enabled group has been deprecated since Tempest 14.0. Therefore the option will be no longer set by python-tempestconf.


New Features

  • A new argument for converting images before uploading them to glance is added. If the arugment is used, the images are converted to .raw format. The feature will reduce boot time of the images in case ceph is the backend.

  • A support for heat-tempest-plugin is added to python-tempestconf which means, that some options required by heat_plugin will be set automatically in order to generate a tempest.conf which can pass at least some heat-tempest-plugin tests and make user’s life easier.


New Features

  • –append argument appends a value or values to the specified section.key pair. It may be helpful in cases when a user wants to add custom extensions to tempest.conf in an automated job. Argument format for adding values: [–append SECTION.KEY=VALUE[,VALUE]]

    If a section or an option specified in CLI does not exist, tempestconf will inform a user about that in logging output.

  • –profile argument specifies a path to a profile.yaml file which contains definitions of python-tempestconf arguments.

    NOTE: If this argument is used, other arguments cannot be defined, it means a user uses either CLI arguments or profile.yaml file.

    A user can generate a sample profile.yaml file using –generate-profile argument. The sample contains definitions of all python-tempestconf arguments set to their default values.

    NOTE: If this argument is used, python-tempestconf ends right after the a sample profile.yaml file is generated.



Improve nova discovery settings

Use healthcheck api for determine swift service availability

New Features

  • When –test-accounts parameter (specifying a path to a accounts.yaml file) is used, don’t write any user credentials to tempest.conf. This will make it easier for users who run tempest tests with accounts.yaml file and want to share their tempest.conf without exposing their credentials.

  • Because of integration of the tool with refstack-client a new parameter, –create-accounts-file, is added. The parameter defines a path where a minimal accounts.yaml file will be created. The accounts.yaml file is important in refstack testing, because the tests are run with non admin credentials. Therefor to make it easier for refstack users, if a user doesn’t specify a path to an existing accounts.yaml file (via test_accounts parameter), but uses a create_accounts_file instead, the file will be created in the specified location and set to the tempest.conf as test_accounts_file under auth section. For this feature a new requirement is specified - PyYAML.

  • The deployer-input file will be loaded automatically if exists in the default path, which is ~/tempest-deployer-input.conf. This will fix the cases that user forgot to add –deployer-input and python-tempestconf forgot some configuration due of that. Also a new argument (–no-default-deployer) is added, which will make python-tempestconf not to load the file automatically.

  • Add support for volume api microversion. It discovers the minimum and maximum the microversion and set them under volume section in tempest.conf.

  • The tempest config tool now can configure tempest.conf with the necessary values, to interact with and test Octavia network load balancing as a service.

  • Allow all users irrespective of Admin and non-admin to upload images to glance and generate image_ref and image_ref_alt for compute.

  • image.http_image name is set based on the image name passed or if not passed is taken from the default one.

  • Remove the requirement of a default-overrides.conf file when user is not executing python-tempestconf inside an initialized tempest directory.

  • validation.image_sh_user option is heavily used in CI and it’s also needed in refstack. Therefor the value is set to cirros automatically from now everytime when image used is cirros. The hardcoded value in default-overrides.conf is removed.

  • Discover when there is more than one compute node and set the resize option according, when the tool is executed with admin credentials. Set by default the console_output to true.

  • Discover swift service only when healthcheck api is working otherwise set it to false. It also removes hardcoded values from swift.

Upgrade Notes

  • etc/default-overrides.conf is removed and is no longer used or read. Important default values were moved to load_basic_defaults method.

  • Use of ‘tenant’ wherever it’s set to tempest.conf, is replaced by ‘project’. This is part 1 of the tenant->project transition.

Other Notes

  • The following options are moved from identity section:
    • admin_username

    • admin_password

    • admin_project_name

    to auth section as this is done in Tempest since Tempest 12.

  • By this change compute.image_ssh_user is removed from default-overrides.conf too, because it was deprecated. All of the image_ssh_user values from different sections were moved to validation section by this change:

    Since that change, there is only one image_ssh_user value and it’s the one under validation section.


Bug Fixes

  • We were using adminURL to talk to Keystone API but in most cases, we run Tempest from outside of admin network for security reasons. We now use public URL, so the public network, which is what we expect our cloud users to do.



Add support for admin parameters being used from auth section

Deprecate allow_tenant_isolation parameter.

Deprecation Notes

  • Move admin_username to auth from identity Move admin_tenant_name to auth from identity Move admin_password to auth from identity

  • Replace allow_tenant_isolation with use_dynamic_credentials



Add a new ability to remove any configuration values from tempest.conf

New Features

  • Add a new parameter –remove to specify which configuration values should not be included in tempest configuration file. Parameter format for removing values: [–remove SECTION.KEY=VALUE[,VALUE]]

    Parameter format for removing all values in key.section: [–remove SECTION.KEY]

    If a section or an option specified in CLI does not exist, tempestconf will inform a user about that in logging output.

  • Added network.remove-extension <extension names followed by comma> to remove neutron api extensions.



Added new unit tests.

Added the ability to enable the testing of the shared file system service (manila) by default if the service is enabled.

Bug Fixes

  • Added the ability to enable the testing of the shared file system service (manila) by default if the service is enabled.

Other Notes

  • Added new unit tests for api discovery module.

  • Start using reno for managing release notes.