v16.0.0 Release Notes

16.0.0 Release Notes

16.0.0

Prelude

This release indicates end of support for Mitaka in Tempest.

New Features

  • Add a new client to handle the OAUTH consumers feature from the identity API.

  • Add missing API call, list all role inference rules, to the roles_client library. This feature enables the possibility of listing all role inference rules in the system.

  • Add cascade parameter to volumes_client. This option provides the ability to delete a volume and have Cinder handle deletion of snapshots associated with that volume by passing an additional argument to volume delete, “cascade=True”.

  • Define the compute server evacuate client method in the servers_client library.

  • Add the list auth projects API to the identity client library. This feature enables the possibility to list projects that are available to be scoped to based on the X-Auth-Token provided in the request.

  • Add versions_client module for image service. This new module provides list_versions() method which shows API versions from Image service.

  • Add the list security groups by server API to the servers_client library. This feature enables the possibility to list security groups for a server instance.

  • Add versions_client module for identity service. This new module provides list_versions() method which shows API versions from Identity service.

  • Add versions_client module for volume service. This new module provides list_versions() method which shows API versions from Volume service.

  • Interface show_quota_set of compute quotas_client has been extended to include the argument “detail”, which allows for detailed quota set information for a project to be retrieved, if set to True.

  • Add remote_client under tempest.lib. This remote_client under tempest.lib is defined as stable interface, and now this module provides the following essential methods.

    • exec_command

    • validate_authentication

    • ping_host

  • Adds a new cli option to tempest run, --combine, which is used to indicate you want the subunit stream output combined with the previous run’s in the testr repository

  • Add update encryption type API to the v2 encryption_types_client library. This feature enables the possibility to update an encryption type for an existing volume type.

  • Add the unmanage volume API service method in v2 volumes_client library. Define v2 volume_manage_client client for the volume service as library interfaces, allowing other projects to use this module as stable libraries without maintenance changes.

    • volume_manage_client(v2)

  • Add server tags APIs to the servers_client library. This feature enables the possibility of updating, deleting and checking existence of a tag on a server, as well as updating and deleting all tags on a server.

  • Define volume transfers service clients as libraries. The following volume transfers service clients are defined as library interface.

    • transfers_client(v2)

Upgrade Notes

  • The JSON_ENC and TXT_ENC option in the _error_checker section have been added with additional content-type which are defined in RFC7231 but missing in the current rest_client.py file. The lack of these additional content-type will cause defcore test to fail for OpenStack public cloud which uses tomcat module in the api gateway. The additions are application/json;charset=utf-8, text/html;charset=utf-8, text/plain;charset=utf-8

  • The default value of rand_name()’s prefix argument is changed to ‘tempest’ from None to identify resources are created by Tempest.

  • The volume config option ‘api_v1’ default is changed to False because the volume v1 API has been deprecated since Juno release.

  • The call_until_true of test module is removed because it was marked as deprecated and Tempest provides it from test_utils as a stable interface instead. Please switch to use test_utils.call_until_true if necessary.

  • Remove Cinder v1 API tests. Cinder v1 API has been deprecated since Juno release, and Juno is not supported by current Tempest. Then Cinder v1 API tests are removed from Tempest.

  • The deprecated config option allow_port_security_disabled from compute_feature_enabled group has been removed.

  • Below deprecated config options from compute group have been removed. Corresponding config options already been available in validation group.

    • compute.image_ssh_user (available as validation.image_ssh_user)

    • compute.ssh_user (available as validation.image_ssh_user)

    • scenario.ssh_user (available as validation.image_ssh_user)

    • compute.network_for_ssh (available as validation.network_for_ssh)

    • compute.ping_timeout (available as validation.ping_timeout)

  • The deprecated config option ‘dvr_extra_resources’ from network group has been removed. This option was for extra resources which were provisioned to bind a router to Neutron L3 agent. The extra resources need to be provisioned in Liberty release or older, and are not required since Mitaka release. Current Tempest doesn’t support Liberty, so this option has been removed from Tempest.

  • The deprecated config option ‘reseller’ from identity_feature_enabled group has been removed.

  • The deprecated volume_services option in the volume_feature_enabled section has now been removed.

  • Tempest now defaults to using Keystone v3 API for the authentication, because Keystone v3 API is CURRENT and the v2 API is deprecated.

Deprecation Notes

  • The deactivate_image configuration switch from the config module is deprecated. It was added to support the older-than-kilo releases which we don’t support anymore.

  • The dvr_extra_resources configuration switch from the config module is deprecated. It was added to support the Liberty Release which we don’t support anymore.

  • Glance v1 APIs are deprecated and v2 are current. Tempest should tests only v2 APIs. Below API version selection config options for glance have been deprecated and will be removed in future.

    • CONF.image_feature_enabled.api_v2

    • CONF.image_feature_enabled.api_v1

  • The resources_prefix is marked as deprecated because it is enough to set ‘tempest’ as the prefix on rand_name() to identify resources which are created by Tempest and no projects set this option on OpenStack dev community.

  • The skip_unless_attr decorator in lib/decorators.py has been deprecated, please use the standard testtools.skipUnless and testtools.skipIf decorators.

  • The skip_unless_config and skip_if_config decorators in the config module have been deprecated and will be removed in the Queens dev cycle. Use the testtools.skipUnless (or a variation of) instead.

  • Volume v1 API is deprecated and the v3 are CURRENT. Tempest doesn’t need to test the v1 API as the default. The volume config option ‘api_v1’ has been marked as deprecated.

  • Deprecate volume v2 transfers resource methods from volumes_client(v2) libraries. Same methods are available in new transfers service client: transfers_client(v2) The following methods of volume v2 volumes_clients have been deprecated:

    • create_volume_transfer (v2.volumes_client)

    • show_volume_transfer (v2.volumes_client)

    • list_volume_transfers (v2.volumes_client)

    • delete_volume_transfer (v2.volumes_client)

    • accept_volume_transfer (v2.volumes_client)

Bug Fixes

  • Fix below volume v2 service clients to make v2 API call: Bug#1667354

    • SchedulerStatsClient

    • CapabilitiesClient

  • The ‘sahara’ config option in the ‘service-available’ group has been moved to the sahara plugin (openstack/sahara-tests) along with tests and service client during the Ocata timeframe. A ‘sahara’ config option was left over on Tempest side, and it’s removed now. As long as the sahara plugin is installed, this change as no impact on users of sahara tests.

Other Notes

  • OpenStack Releases Supported after this release are Newton and Ocata

    The release under current development as of this tag is Pike, meaning that every Tempest commit is also tested against master branch during the Pike cycle. However, this does not necessarily mean that using Tempest as of this tag will work against Pike (or future releases) cloud.