[release-announce] [quality] tempest 16.0.0 (pike)

no-reply at openstack.org no-reply at openstack.org
Wed Apr 19 09:59:01 UTC 2017


We are pumped to announce the release of:

tempest 16.0.0: OpenStack Integration Testing

This release is part of the pike release series.

Download the package from:

    https://pypi.python.org/pypi/tempest

For more details, please see below.

16.0.0
^^^^^^

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 upating, 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 currnt 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 ideintify 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 the client_parameters argument in
  *tempest.lib.services.clients.ServiceClients*. The parameter is
  actually not honoured already - see
  https://bugs.launchpad.net/tempest/+bug/1680915

* 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.

Changes in tempest 15.0.0..16.0.0
---------------------------------

6f05307 Cleanup services decorator
2032257 Stop using self.parameters for compute clients
e356f33 Fix and improve ServiceClients docstring examples
5bb0069 Prepare release notes for release 16.0.0
8cc2cba Fix invalid values when setting config options' default value
fb35d22 Fix test_volume_list_with_detail_param_marker
3b6d599 Deprecate client_parameters from ServiceClients
1e8d676 Updated from global requirements
e1a5083 Make bash shebangs through /usr/bin/env
1b0567c Remove test_baremetal_nodes from tempest
cd420fb Add Apache License content in .py files
66b616a Add name param in setup_test_role
98544cf Fix api ref link in TransfersClient
b86de88 Format multi-line release notes properly
71c71e9 Beautify assertEmpty and assertNotEmpty
6ea5f8b Fix broken api link and put api link in one line
8f28d1f Fix heading levels in write_tests doc
9e0771f Remove non-existent config options of oslo modules
f66799e Remove oslo.i18n entry from config-generator
cf769af Skip arbitrary container tests for Ceph
5b346f5 Remove duplicated testcase test_get_private_image
6f52fc5 [DOC] Fix details of tox
ad1b862 Remove 'allow_port_security_disabled' option
681dff8 Add size assert for creating volume snapshot
0e3bbdf Delete volume with associated snapshots
59614b4 Separate volume v2 transfers service clients
e2325f0 Add Nova version log
8b0213a Remove 'dvr_extra_resources' option
1eaf6d4 Remove 'reseller' config option
61d42c7 Set default value of 'dvr_extra_resources' option to False
b4c484e Use min_count to create multi servers
56e7f38 Fix no module unit test for Python3.6
edb2b12 Fix flavor info in server response schema
fe96c26 Add additional roles method to v3 roles client.
87b08e8 Move cinder tests into unversioned path - part2
d8386a3 Rename test-removal.rst
d3eb1c0 Move Cinder non-admin tests into unversioned path
8c18908 Merge Cinder v3 base test module into general one
f62703b Add volume backup container parameter
c860912 Fix tox coverage section
9fff020 Move test_volume_manage to unversioned path
e8ab5f9 Add tempest test writing guide
2ea48f0 Rename server arg in wait_for_interface_status method
76d80b5 Remove a redundant client variable
12afdb8 Correct the module path for decorators
9b8a367 Reduce the time waiting for server ACTIVE
41e7bd7 Updated from global requirements
efe033a Add random name in volume.base.create_backup
ccd9d65 Fix API reference links in volume/snapshot/type client
7fd5d4b Move Cinder admin tests into unversioned path
e8afb8c Rename Cinder V2 API tests
244cf7c Remove deprecated compute config options for validation-2
97c7419 Glance supports vhdx disk_format
9b66085 Removing py34 from tox
2715d22 Fix API reference links in volume client
9751b3d Correct invalid param in create_volume
f52c5a5 Remove unused CONF and LOG
f96aefe Remove unnecessary usuage of instance variable
63fe58f Volume force-delete when volume in maintenance state
5129c62 Remove set_mac_address from old remote_client
3bd0d2b Remove remaining usage of cinder v1 API call from Tempest
ba37ac4 Volume reset to maintenance mode
159064a Remove unnecessary Cinder v1 code
ae36ce8 Nova: Move _Websocket class to a common place
5afcb34 Remove cinder clients api version 1
5cbc00a Remove name checking for api version 1
79ec334 Should be more clear for device name opt
7252ce0 Skip flaky test_create_router_set_gateway_with_fixed_ip
14158c9 Adding server evacuate client
e4dc8fb Add skip method for volume test with the glance service
877811f Add note on get_disks about unsupported guests
cec4494 Fix race in test_attach_detach_volume
f684ed1 Fix multiple create for multiple networks
63cf807 Unskip test_snapshot_list_param_limit_equals_zero
8e2d403 Identity V3-ext Oauth1 Consumers Client
d114804 Use Sphinx 1.5 warning-is-error
a57530c Remove special_fields definition
dde9de4 Ensure compute features enabled in test_images
4adae2f Add "list Cinder API versions"
8ea57c2 Remove explicit install of setuptools
e3701dd doc: Remove config for unused builders
f4fbf30 Add test case for volume unmanage and manage
5a3ad34 Change API-WG guideline link to specs.o.o
316d564 Add test case for update volume encryption type
c9d5800 Fix for test_volume_swap
39d180e Add reno for removing Cinder v1 API tests
ee88041 Deprecate the ``deactivate_image`` configuration switch
844180e Add user key data debug script to instance user data
679f8c3 Remove assign_static_ip from old remote_client
126fe98 Remove set_nic_state from old remote_client
7a0811e Deprecate Cinder v1 API option
c4fcdbb Remove Cinder v1 tests
96490ea Improve server tag schema
d1ef129 Deprecate the dvr_extra_resources config switch.
176e7cb Improve multiple create server tests
5eccdf4 Fix typo in README.rst
86b92ea Updated from global requirements
44a0f39 Make novnc test compatible with RFB3.3
8499c19 Make remote_client reno readable
f72343e Add "list Glance API versions" test
4dda94e Remove unnecessary show_floatingip
d597b95 Revert "Docs: Add the remote tag to the badge image"
35a694b Use base.create_image_from_server to create server snapshot
74e1df5 Add test case for Keystone API "GET /v3/auth/projects"
f37da96 Add test_router_set_gateway_used_ip_returns_409
8c8074c Add test_create_router_set_gateway_with_fixed_ip
fe97e0d Cleanup ignored_list for T110 and T111
3f52a4a Add new detail kwarg to show_quota_set to QuotasClient.
37b94a0 Network scenarios: remove some instance variables
382a6f1 Add plugin group names to CONF
ef1c1ce Use tempest.lib data_utils - volume
60680a8 Use tempest.lib data_utils - orchestration
e887323 Use tempest.lib data_utils - object_storage
f50e4df Use tempest.lib data_utils - network
5ba1aa2 Removing sahara from the service available group
58fbcd0 Add Cinder microversion test info in doc
cc01c3e Use tempest.lib data_utils - image
7bd2575 Use tempest.lib data_utils - identity
757833a Use tempest.lib data_utils - compute
be4fb50 Use tempest.lib data_utils - scenario
d25a1a3 Add RemoteClient under tempest.lib
da26b16 Add "list versions" test for Keystone
8b23c79 Move plugin client registration to proxy
6a36e3d Add a bit more debugging to the client registry
4e5a69e Remove send_signal, get_pids, mount and umount
0b5a90e Updated from global requirements
c080786 Add api tests for create-image
f0223c4 Add a  negative test for security_group api
126a66d Correct API reference link in compute client(3)
4ffa4c1 Correct API reference link in compute client(2)
8d4134b Correct API reference link in compute client(1)
03e1ad7 Correct API reference link in identity client
6b0b8b7 Deprecate glance APIs version config options
b2f3090 Correct API reference link in volume client
b6a0f41 Correct API reference link in image client
01ae8db Correct API reference link in servers_client
84aeba6 Remove get_ip_list()
cc1264c Add network_mask_bits argument to assign_static_ip()
4e33785 Add dhcp_client argument to renew_lease()
191e1ca Move CONF values into __init__ in RemoteClient
d4a1a37 Fix keypair GET response schema
326a6b3 Remove get_ram_size_in_mb, get_number_of_vcpus, etc
8a08211 Drop allowing old test.idempotent_id
df33c78 Add call_and_ignore_notfound_exc to Keystone base
b838af9 Add a new scenario tox env
4d8ba23 Fix typo of setUpClass
a6065a6 Change default of auth_version to v3
baa35a2 Move test_extension and use base for non-admin
49505df make -e full run tempest scenarios serially
7d6e48c Add --combine option to tempest run
89a6cfc Extend compute API admin test for swap volume
a60fe38 Update README section on Python3 support
92ade4b Improve error info in assertEmpty and assertNotEmpty
11cf2c5 Deprecate resources_prefix and change rand_name()
bcc1208 Add smoke tag to compute version tests
35901c4 test_neutron_resources.py exception handler
1d0cc9c [Fix gate]Update test requirement
7d8f7c5 Correct test_list_servers_filtered_by_ip for bug 1668828"
592148c Improve test_implied_domain_roles
589028a Change rebuild tests to use image_ref
d4e041d Close connection after each failed connect attempt
b6dfa08 Remove unused variable
95a3281 Remove unused variable and unnecessary instance variable
fec7c59 Remove unused client in setup_clients
13a7fec Updated from global requirements
4c3ebb0 Fix remote connectivity checks
939ec1a Removed unused PING_IPV4_COMMAND etc
7531e98 Do not use skip_checks in TestServerAdvancedOps
36f0a97 Use base.attach_volume in test_attach_volume
5e66340 Revert "Add reno for Tempest v15.0.0"
d571e03 Remove testing of bdm v1 in boot from volume tests
a2ca059 Fix tempest 14.0.0 release notes
b668a53 Fix tempest 15.0.0 release notes
29cc1f8 Add unit test to verify output method
e6a375e Fix subunit describe calls for py3
6d84d31 Remove volume_feature_enabled.volume_services
bd4361d Fix the removal of config.skip_(unless|if)_config decorators
a8a4492 keystone roles are case insensitive
3b9e42e Remove unnecessary wait_for_server_status
d1db0c7 Add content-type without spaces
1157b4b Use base.create_flavor in test_flavors_access
7c95bef Adds missing server tags APIs to servers client.
703930f Remove unnessessary metadata parameter
5b2b362 Use 'delete_snapshot' method
b200555 Update the test removal procedure
49f99e7 Fix volume v2 capabilities/scheduler-stats tests to test v2 APIs
32b2e30 Remove extra "?expanded=" from api link
758b767 Skip test_stamp_pattern until bug 1664793 is fixed
27ca251 Remove deprecated test runner wrappers (.sh files)
ec2eefe Use upper-constraints for tox envs
f2ba23f Remove call_until_true from test module
7e936b3 Use a valid project_id flavor_access neg tests
d827737 Add volume snapshot metadata parameter
96daca7 Remove unnecessary show_server in TestServerAdvancedOps
c8e2583 switching to decorators.idempotent_id
b195508 Remove unnecessary assert and value assignment
7b93104 Add missing @test.attr(type='negative') for negative tests
4e9c1dc Add reno for Tempest v15.0.0
0bfe8bd Revert "Remove the skip_unless_config and skip_if_config decorators"
f7a8c57 Rename reno files of v15.0.0
5fe6239 Revert "Remove wait_for_server from create_image_from_server"
c092892 There are some typos in releasenotes
44cdf15 Remove unnecessary int casting
0884488 Add test creating a protected image
9aa23f3 Deprecate the skip_unless_attr decorator.
64e6b44 Scenario manager: remove some useless `_list_*` methods
7eba6ae Fix tests for bug 1656183
0da0375 Add negative tests for snapshot pagination
d77d3d1 Remove unnecessary int declaration
3beb6cf Add test for compute API List Security Groups By Server
291a806 Add decorator for negative tests
52d7b0d Add a generic "wait_for_volume_resource_status" function
a1f3f85 Add v15.0.0 releasenote
7e0c9b6 Do not use unnecessary instance variable in compute and volume
7a8f29d Change instance variable to local variable in scenario/image/volume
90e2a6d Fix test_novnc for python3
5cc4373 Remove the skip_unless_config and skip_if_config decorators
ad3c2d8 Make test_volume_pools A/A compatible
e5b62a6 Add admin_servers_client in BaseV2ComputeAdminTest
1ec4c5a Remove unused client in setup_clients
94cb054 Use base.create_flavor in servers test
a7fd37a Verify metadata preservation after backup restore
34a6512 Domain specific roles API tests
61e4045 Test live migration back and forth


Diffstat (except docs and test files)
-------------------------------------

HACKING.rst                                        |   6 +-
README.rst                                         |  25 +--
.../12.2.0-clients_module-16f3025f515bf9ec.yaml    |   2 +-
...until-true-to-tempest-lib-c9ea70dd6fe9bd15.yaml |   2 +-
...pest-cleanup-nostandalone-39df2aafb2545d35.yaml |   2 +-
...y-v3-clients-as-a-library-d34b4fdf376984ad.yaml |   6 +
...s-to-roles-client-library-edf96408ad9ba82e.yaml |   6 +
...-manage-client-as-library-a76ffdba9d8d01cb.yaml |   8 +
..._security_disabled-option-2d3d87f6bd11d03a.yaml |   8 +
...-feature-enabled.reseller-84800a8232fe217f.yaml |   8 +
...e_enabled.volume_services-dbe024ea067d5ab2.yaml |   8 +
....0.0-jsonschema-validator-2377ba131e12d3c7.yaml |   5 +
...croversion-config-options-eaee6a7d2f8390a8.yaml |   9 +
...validation-config-options-e3d1b89ce074d71c.yaml |  25 +++
...t-scenario-config-options-414e0c5442e967e9.yaml |   6 +
...ed-network-config-options-f9ce276231578fe6.yaml |  11 +
.../notes/16.0.0-mitaka-eol-88ff8355fff81b55.yaml  |  13 ++
...s-to-roles-client-library-178d4a6000dec72d.yaml |   7 +
...rameter-to-volumes-client-ff4f7f12795003a4.yaml |   7 +
...ulate-client-as-a-library-ed76baf25f02c3ca.yaml |   3 +
...ntent-type-without-spaces-b2c9b91b257814f3.yaml |   9 +
...y-v3-clients-as-a-library-d34b4fdf376984ad.yaml |   6 -
...s-to-roles-client-library-edf96408ad9ba82e.yaml |   6 -
...-list-auth-project-client-5905076d914a3943.yaml |   6 +
...-list-glance-api-versions-ec5fc8081fc8a0ae.yaml |   6 +
...to-servers-client-library-088df48f6d81f4be.yaml |   6 +
...ersion-to-identity-client-944cb7396088a575.yaml |   6 +
...-version-to-volume-client-4769dd1bd4ab9c5e.yaml |   6 +
...d-quota-sets-detail-kwarg-74b72183295b3ce7.yaml |   6 +
...-manage-client-as-library-a76ffdba9d8d01cb.yaml |   8 -
...tempest-lib-remote-client-adbeb3f42a36910b.yaml |  11 +
...empest-run-combine-option-e94c1049ba8985d5.yaml |   6 +
...o-encryption-types-client-f3093532a0bcf9a1.yaml |   6 +
...-manage-client-as-library-78ab198a1dc1bd41.yaml |   9 +
...create-server-tags-client-8c0042a77e859af6.yaml |   8 +
..._security_disabled-option-2d3d87f6bd11d03a.yaml |   8 -
...e-deactivate_image-config-7a282c471937bbcb.yaml |   6 +
...vr_extra_resources-config-8c319d6dab7f7e5c.yaml |   7 +
...pi-version-config-options-8370b63aea8e14cf.yaml |  10 +
...-feature-enabled.reseller-84800a8232fe217f.yaml |   8 -
...e-resources-prefix-option-ad490c0a30a0266b.yaml |  10 +
...kip_unless_attr-decorator-450a1ed727494724.yaml |   5 +
...p_unless_config-decorator-64c32d588043ab12.yaml |   5 +
...e_enabled.volume_services-dbe024ea067d5ab2.yaml |   8 -
...ated-cinder-api-v1-option-df7d5a54d93db5cf.yaml |  12 +
...precate_client_parameters-cb8d069e62957f7e.yaml |   6 +
...ce-clients-bugfix-1667354-73d2c3c8fedc08bf.yaml |   7 +
.../jsonschema-validator-2377ba131e12d3c7.yaml     |   5 -
...e-call_until_true-of-test-de9c13bc8f969921.yaml |   6 +
..._security_disabled-option-d0ffaeb2e7817707.yaml |   5 +
...croversion-config-options-eaee6a7d2f8390a8.yaml |   9 -
...validation-config-options-e3d1b89ce074d71c.yaml |  14 --
...ion-config-options-part-2-5cd17b6e0e6cb8a3.yaml |  11 +
...vr_extra_resources-option-e8c441c38eab7ddd.yaml |   8 +
...-identity-reseller-option-4411c7e3951f1094.yaml |   4 +
...t-scenario-config-options-414e0c5442e967e9.yaml |   6 -
...ed-network-config-options-f9ce276231578fe6.yaml |  11 -
...-sahara-service-available-44a642aa9c634ab4.yaml |   7 +
...e_enabled.volume_services-c6aa142cc1021297.yaml |   5 +
.../use-keystone-v3-api-935860d30ddbb8e9.yaml      |   5 +
.../volume-transfers-client-e5ed3f5464c0cdc0.yaml  |  18 ++
releasenotes/source/conf.py                        |   2 +-
releasenotes/source/index.rst                      |   1 +
releasenotes/source/v15.0.0.rst                    |   6 +
requirements.txt                                   |  10 +-
run_tempest.sh                                     | 135 ------------
setup.cfg                                          |   6 +-
setup.py                                           |   2 +-
tempest/api/compute/admin/test_agents.py           |   2 +-
tempest/api/compute/admin/test_aggregates.py       |   2 +-
.../api/compute/admin/test_aggregates_negative.py  |   2 +-
tempest/api/compute/admin/test_baremetal_nodes.py  |  55 -----
tempest/api/compute/admin/test_flavors.py          |   4 +-
tempest/api/compute/admin/test_flavors_access.py   |  40 +---
.../compute/admin/test_flavors_access_negative.py  |  85 ++-----
.../api/compute/admin/test_flavors_extra_specs.py  |   6 +-
.../admin/test_flavors_extra_specs_negative.py     |   6 +-
.../api/compute/admin/test_hypervisor_negative.py  |   2 +-
tempest/api/compute/admin/test_keypairs_v210.py    |   2 +-
tempest/api/compute/admin/test_live_migration.py   |  46 ++--
tempest/api/compute/admin/test_migrations.py       |  12 +-
tempest/api/compute/admin/test_quotas.py           |   2 +-
tempest/api/compute/admin/test_quotas_negative.py  |   3 +-
tempest/api/compute/admin/test_security_groups.py  |   2 +-
tempest/api/compute/admin/test_servers.py          |   7 +-
tempest/api/compute/admin/test_servers_negative.py |  33 +--
tempest/api/compute/admin/test_volume_swap.py      |  75 +++++--
tempest/api/compute/admin/test_volumes_negative.py |  13 +-
tempest/api/compute/base.py                        |  43 ++--
.../api/compute/flavors/test_flavors_negative.py   |   5 +-
.../test_floating_ips_actions_negative.py          |   2 +-
.../test_list_floating_ips_negative.py             |   2 +-
tempest/api/compute/images/test_image_metadata.py  |   2 +-
.../compute/images/test_image_metadata_negative.py |   2 +-
tempest/api/compute/images/test_images.py          |  42 +++-
tempest/api/compute/images/test_images_negative.py |   6 +-
.../api/compute/images/test_images_oneserver.py    |  19 +-
.../images/test_images_oneserver_negative.py       |  44 ++--
.../api/compute/images/test_list_image_filters.py  |   2 +-
.../images/test_list_image_filters_negative.py     |   2 +-
tempest/api/compute/keypairs/base.py               |   2 +-
tempest/api/compute/keypairs/test_keypairs.py      |   2 +-
.../api/compute/keypairs/test_keypairs_negative.py |   2 +-
tempest/api/compute/keypairs/test_keypairs_v22.py  |   2 +-
.../limits/test_absolute_limits_negative.py        |   4 +-
tempest/api/compute/security_groups/base.py        |   2 +-
.../security_groups/test_security_group_rules.py   |   3 -
.../test_security_group_rules_negative.py          |   2 +-
.../security_groups/test_security_groups.py        |  30 ++-
.../test_security_groups_negative.py               |   2 +-
.../api/compute/servers/test_attach_interfaces.py  |   1 -
tempest/api/compute/servers/test_create_server.py  |  24 +-
tempest/api/compute/servers/test_delete_server.py  |   4 +-
tempest/api/compute/servers/test_device_tagging.py |   2 +-
.../servers/test_instance_actions_negative.py      |   2 +-
.../compute/servers/test_list_server_filters.py    |  84 +++----
.../compute/servers/test_list_servers_negative.py  |   3 +-
.../api/compute/servers/test_multiple_create.py    |  13 +-
tempest/api/compute/servers/test_novnc.py          | 175 +++++----------
tempest/api/compute/servers/test_server_actions.py |   4 +-
.../api/compute/servers/test_server_addresses.py   |   2 +-
tempest/api/compute/servers/test_server_group.py   |   2 +-
.../servers/test_server_metadata_negative.py       |   2 +-
.../api/compute/servers/test_server_personality.py |   4 +-
tempest/api/compute/servers/test_server_rescue.py  |  10 +-
.../compute/servers/test_server_rescue_negative.py |   2 +-
tempest/api/compute/servers/test_server_tags.py    | 108 +++++++++
tempest/api/compute/servers/test_servers.py        |   2 +-
.../api/compute/servers/test_servers_negative.py   |   6 +-
.../compute/test_live_block_migration_negative.py  |   7 +-
tempest/api/compute/test_quotas.py                 |   4 +-
tempest/api/compute/test_versions.py               |   3 +
tempest/api/compute/volumes/test_attach_volume.py  |  88 +++-----
.../api/compute/volumes/test_volume_snapshots.py   |   8 +-
tempest/api/compute/volumes/test_volumes_get.py    |   5 +-
.../api/compute/volumes/test_volumes_negative.py   |   2 +-
tempest/api/identity/admin/v2/test_endpoints.py    |   6 +-
tempest/api/identity/admin/v2/test_roles.py        |   2 +-
.../api/identity/admin/v2/test_roles_negative.py   |   2 +-
tempest/api/identity/admin/v2/test_services.py     |   2 +-
.../api/identity/admin/v2/test_tenant_negative.py  |   2 +-
tempest/api/identity/admin/v2/test_tenants.py      |   2 +-
tempest/api/identity/admin/v2/test_tokens.py       |   7 +-
tempest/api/identity/admin/v2/test_users.py        |   2 +-
.../api/identity/admin/v2/test_users_negative.py   |   2 +-
tempest/api/identity/admin/v3/test_credentials.py  |   2 +-
.../identity/admin/v3/test_default_project_id.py   |   2 +-
tempest/api/identity/admin/v3/test_domains.py      |   2 +-
.../api/identity/admin/v3/test_domains_negative.py |   2 +-
tempest/api/identity/admin/v3/test_endpoints.py    |   7 +-
.../identity/admin/v3/test_endpoints_negative.py   |   6 +-
tempest/api/identity/admin/v3/test_groups.py       |   2 +-
tempest/api/identity/admin/v3/test_inherits.py     |  26 +--
.../api/identity/admin/v3/test_list_projects.py    |   2 +-
tempest/api/identity/admin/v3/test_list_users.py   |   2 +-
.../api/identity/admin/v3/test_oauth_consumers.py  |  91 ++++++++
tempest/api/identity/admin/v3/test_policies.py     |   2 +-
tempest/api/identity/admin/v3/test_projects.py     |   8 +-
.../identity/admin/v3/test_projects_negative.py    |   2 +-
tempest/api/identity/admin/v3/test_regions.py      |   2 +-
tempest/api/identity/admin/v3/test_roles.py        | 122 ++++++++++-
tempest/api/identity/admin/v3/test_services.py     |   2 +-
tempest/api/identity/admin/v3/test_tokens.py       |  40 +++-
tempest/api/identity/admin/v3/test_trusts.py       |  24 +-
tempest/api/identity/admin/v3/test_users.py        |   7 +-
.../api/identity/admin/v3/test_users_negative.py   |   2 +-
tempest/api/identity/base.py                       |  34 ++-
tempest/api/identity/test_extension.py             |  31 ---
tempest/api/identity/v2/test_extension.py          |  31 +++
tempest/api/identity/v3/test_api_discovery.py      |  14 ++
tempest/api/identity/v3/test_users.py              |   2 -
tempest/api/image/admin/v2/test_images.py          |   2 +-
tempest/api/image/base.py                          |   3 +-
.../api/image/v1/test_image_members_negative.py    |   2 +-
tempest/api/image/v1/test_images.py                |  14 +-
tempest/api/image/v1/test_images_negative.py       |   2 +-
tempest/api/image/v2/test_images.py                |   3 +-
tempest/api/image/v2/test_images_member.py         |  17 --
.../v2/test_images_metadefs_namespace_objects.py   |   2 +-
.../test_images_metadefs_namespace_properties.py   |   2 +-
.../v2/test_images_metadefs_namespace_tags.py      |   2 +-
.../image/v2/test_images_metadefs_namespaces.py    |   2 +-
tempest/api/image/v2/test_images_negative.py       |  13 ++
tempest/api/image/v2/test_images_tags.py           |   2 +-
tempest/api/image/v2/test_images_tags_negative.py  |   2 +-
tempest/api/image/v2/test_versions.py              |  30 +++
.../admin/test_external_network_extension.py       |   2 +-
.../api/network/admin/test_l3_agent_scheduler.py   |  37 ----
tempest/api/network/admin/test_negative_quotas.py  |   1 +
tempest/api/network/admin/test_quotas.py           |   2 +-
tempest/api/network/admin/test_routers_dvr.py      |   2 +-
tempest/api/network/base.py                        |   2 +-
tempest/api/network/base_security_groups.py        |   2 +-
tempest/api/network/test_dhcp_ipv6.py              |   2 +-
tempest/api/network/test_extra_dhcp_options.py     |   2 +-
tempest/api/network/test_metering_extensions.py    |   2 +-
tempest/api/network/test_networks.py               |   2 +-
tempest/api/network/test_networks_negative.py      |   2 +-
tempest/api/network/test_ports.py                  |   2 +-
tempest/api/network/test_routers.py                |  33 ++-
tempest/api/network/test_routers_negative.py       |  28 ++-
tempest/api/network/test_security_groups.py        |   2 +-
.../api/network/test_security_groups_negative.py   |  10 +
tempest/api/network/test_subnetpools_extensions.py |   2 +-
tempest/api/object_storage/base.py                 |   2 +-
tempest/api/object_storage/test_account_quotas.py  |   2 +-
.../api/object_storage/test_account_services.py    |   2 +-
tempest/api/object_storage/test_container_acl.py   |   2 +-
.../object_storage/test_container_acl_negative.py  |   2 +-
.../api/object_storage/test_container_quotas.py    |   2 +-
.../api/object_storage/test_container_services.py  |   2 +-
.../test_container_services_negative.py            |   2 +-
.../api/object_storage/test_container_staticweb.py |   2 +-
tempest/api/object_storage/test_container_sync.py  |   3 +-
tempest/api/object_storage/test_object_formpost.py |   2 +-
.../test_object_formpost_negative.py               |   3 +-
tempest/api/object_storage/test_object_services.py |   2 +-
tempest/api/object_storage/test_object_slo.py      |   2 +-
tempest/api/object_storage/test_object_temp_url.py |   2 +-
.../test_object_temp_url_negative.py               |   2 +-
tempest/api/object_storage/test_object_version.py  |   2 +-
tempest/api/orchestration/base.py                  |   9 +-
.../api/orchestration/stacks/test_environment.py   |   2 +-
tempest/api/orchestration/stacks/test_limits.py    |   2 +-
.../orchestration/stacks/test_neutron_resources.py |  17 +-
.../orchestration/stacks/test_non_empty_stack.py   |   2 +-
.../stacks/test_nova_keypair_resources.py          |   2 +-
tempest/api/orchestration/stacks/test_soft_conf.py |   2 +-
tempest/api/orchestration/stacks/test_stacks.py    |   2 +-
.../orchestration/stacks/test_swift_resources.py   |   2 +-
tempest/api/orchestration/stacks/test_templates.py |   2 +-
tempest/api/orchestration/stacks/test_volumes.py   |  14 +-
.../api/volume/admin/test_backends_capabilities.py |  79 +++++++
tempest/api/volume/admin/test_multi_backend.py     |  27 +--
tempest/api/volume/admin/test_qos.py               |  12 +-
tempest/api/volume/admin/test_snapshot_manage.py   |  73 +++++++
tempest/api/volume/admin/test_snapshots_actions.py |  12 +-
tempest/api/volume/admin/test_user_messages.py     |  88 ++++++++
tempest/api/volume/admin/test_volume_hosts.py      |   6 +-
tempest/api/volume/admin/test_volume_manage.py     |  81 +++++++
tempest/api/volume/admin/test_volume_pools.py      |  39 ++++
tempest/api/volume/admin/test_volume_quotas.py     |  24 +-
.../volume/admin/test_volume_quotas_negative.py    |  10 +-
.../admin/test_volume_retype_with_migration.py     |  20 +-
tempest/api/volume/admin/test_volume_services.py   |  30 +--
.../admin/test_volume_snapshot_quotas_negative.py  |  12 +-
.../api/volume/admin/test_volume_type_access.py    |  92 ++++++++
tempest/api/volume/admin/test_volume_types.py      |  87 ++++----
.../volume/admin/test_volume_types_extra_specs.py  |   8 +-
.../test_volume_types_extra_specs_negative.py      |  26 ++-
.../api/volume/admin/test_volume_types_negative.py |  15 +-
tempest/api/volume/admin/test_volumes_actions.py   |  13 +-
tempest/api/volume/admin/test_volumes_backup.py    |  29 ++-
tempest/api/volume/admin/test_volumes_list.py      |  66 ++++++
tempest/api/volume/admin/v2/__init__.py            |   0
.../volume/admin/v2/test_backends_capabilities.py  |  79 -------
.../api/volume/admin/v2/test_snapshot_manage.py    |  73 -------
tempest/api/volume/admin/v2/test_volume_pools.py   |  42 ----
.../api/volume/admin/v2/test_volume_type_access.py |  92 --------
tempest/api/volume/admin/v2/test_volumes_list.py   |  66 ------
tempest/api/volume/admin/v3/__init__.py            |   0
tempest/api/volume/admin/v3/test_user_messages.py  |  87 --------
tempest/api/volume/base.py                         | 164 +++++++-------
tempest/api/volume/test_availability_zone.py       |  10 +-
tempest/api/volume/test_extensions.py              |   6 +-
tempest/api/volume/test_image_metadata.py          |  72 ++++++
tempest/api/volume/test_snapshot_metadata.py       |  12 +-
tempest/api/volume/test_versions.py                |  30 +++
tempest/api/volume/test_volume_absolute_limits.py  |   8 +-
tempest/api/volume/test_volume_delete_cascade.py   | 101 +++++++++
tempest/api/volume/test_volume_metadata.py         |  10 +-
tempest/api/volume/test_volume_transfers.py        |  38 ++--
tempest/api/volume/test_volumes_actions.py         |  80 ++++---
tempest/api/volume/test_volumes_backup.py          |  54 +++--
tempest/api/volume/test_volumes_clone.py           |  14 +-
tempest/api/volume/test_volumes_clone_negative.py  |  10 +-
tempest/api/volume/test_volumes_extend.py          |  20 +-
tempest/api/volume/test_volumes_get.py             |  47 ++--
tempest/api/volume/test_volumes_list.py            | 175 ++++++++++++++-
tempest/api/volume/test_volumes_negative.py        |  71 ++----
tempest/api/volume/test_volumes_snapshots.py       |  72 +++---
tempest/api/volume/test_volumes_snapshots_list.py  |  81 +++++--
.../api/volume/test_volumes_snapshots_negative.py  |  28 ++-
tempest/api/volume/v2/__init__.py                  |   0
tempest/api/volume/v2/test_image_metadata.py       |  65 ------
tempest/api/volume/v2/test_volumes_list.py         | 204 -----------------
.../api/volume/v2/test_volumes_snapshots_list.py   |  93 --------
tempest/api/volume/v3/__init__.py                  |   0
tempest/api/volume/v3/base.py                      |  65 ------
tempest/clients.py                                 |  20 +-
tempest/cmd/config-generator.tempest.conf          |   3 -
tempest/cmd/run.py                                 |  29 +++
tempest/cmd/subunit_describe_calls.py              |   3 +-
tempest/common/compute.py                          | 123 ++++++++++-
tempest/common/utils/__init__.py                   |   4 -
tempest/common/utils/linux/remote_client.py        | 140 ++----------
tempest/common/validation_resources.py             |   2 +-
tempest/common/waiters.py                          |  84 +++----
tempest/config.py                                  | 151 ++++++++-----
tempest/exceptions.py                              |   9 +-
tempest/hacking/ignored_list_T110.txt              |   3 -
tempest/hacking/ignored_list_T111.txt              |   1 -
.../api_schema/response/compute/v2_1/keypairs.py   |   9 +-
.../lib/api_schema/response/compute/v2_1/quotas.py | 118 ++++++++++
.../api_schema/response/compute/v2_1/servers.py    |  22 +-
.../api_schema/response/compute/v2_26/servers.py   |  34 +++
tempest/lib/api_schema/response/volume/__init__.py |   0
tempest/lib/api_schema/response/volume/versions.py |  60 +++++
tempest/lib/cmd/check_uuid.py                      |  13 +-
tempest/lib/common/cred_client.py                  |   3 +-
tempest/lib/common/rest_client.py                  |  24 +-
tempest/lib/common/ssh.py                          |   1 +
tempest/lib/common/utils/data_utils.py             |   2 +-
tempest/lib/common/utils/linux/__init__.py         |   0
tempest/lib/common/utils/linux/remote_client.py    | 117 ++++++++++
tempest/lib/decorators.py                          |   2 +
tempest/lib/services/clients.py                    |  43 ++--
tempest/lib/services/compute/agents_client.py      |   8 +-
tempest/lib/services/compute/aggregates_client.py  |  10 +-
tempest/lib/services/compute/fixed_ips_client.py   |   2 +-
tempest/lib/services/compute/flavors_client.py     |  25 ++-
.../lib/services/compute/floating_ips_client.py    |   8 +-
tempest/lib/services/compute/hosts_client.py       |   9 +-
tempest/lib/services/compute/images_client.py      |  11 +-
tempest/lib/services/compute/interfaces_client.py  |   2 +-
tempest/lib/services/compute/keypairs_client.py    |   8 +-
tempest/lib/services/compute/migrations_client.py  |   2 +-
.../lib/services/compute/quota_classes_client.py   |   5 +-
tempest/lib/services/compute/quotas_client.py      |  25 ++-
.../compute/security_group_default_rules_client.py |   2 +-
.../compute/security_group_rules_client.py         |   2 +-
.../lib/services/compute/security_groups_client.py |  10 +-
.../lib/services/compute/server_groups_client.py   |   2 +-
tempest/lib/services/compute/servers_client.py     | 225 ++++++++++++++-----
tempest/lib/services/compute/services_client.py    |   6 +-
tempest/lib/services/compute/snapshots_client.py   |   8 +-
.../lib/services/compute/tenant_usages_client.py   |   4 +-
tempest/lib/services/compute/versions_client.py    |  22 +-
tempest/lib/services/compute/volumes_client.py     |   9 +-
.../lib/services/identity/v2/endpoints_client.py   |   2 +-
tempest/lib/services/identity/v2/roles_client.py   |  14 +-
.../lib/services/identity/v2/services_client.py    |   4 +-
tempest/lib/services/identity/v2/tenants_client.py |   4 +-
tempest/lib/services/identity/v2/users_client.py   |   6 +-
tempest/lib/services/identity/v3/__init__.py       |   6 +-
.../lib/services/identity/v3/endpoints_client.py   |   2 +-
tempest/lib/services/identity/v3/groups_client.py  |   2 +-
.../lib/services/identity/v3/identity_client.py    |   7 +
.../services/identity/v3/oauth_consumers_client.py |  95 ++++++++
.../lib/services/identity/v3/policies_client.py    |   2 +-
tempest/lib/services/identity/v3/regions_client.py |   2 +-
.../identity/v3/role_assignments_client.py         |   2 +-
tempest/lib/services/identity/v3/roles_client.py   |  12 +
.../lib/services/identity/v3/services_client.py    |   2 +-
.../lib/services/identity/v3/versions_client.py    |  38 ++++
tempest/lib/services/image/v1/images_client.py     |   4 +-
tempest/lib/services/image/v2/__init__.py          |   4 +-
.../lib/services/image/v2/namespace_tags_client.py |  10 +-
.../lib/services/image/v2/resource_types_client.py |   8 +-
tempest/lib/services/image/v2/versions_client.py   |  38 ++++
tempest/lib/services/network/ports_client.py       |   2 +-
tempest/lib/services/volume/v2/__init__.py         |   5 +-
tempest/lib/services/volume/v2/backups_client.py   |   4 +-
.../lib/services/volume/v2/capabilities_client.py  |   7 +-
.../services/volume/v2/encryption_types_client.py  |  14 ++
tempest/lib/services/volume/v2/qos_client.py       |  12 +-
tempest/lib/services/volume/v2/quotas_client.py    |   2 +-
.../services/volume/v2/scheduler_stats_client.py   |   6 +-
tempest/lib/services/volume/v2/snapshots_client.py |  13 +-
tempest/lib/services/volume/v2/transfers_client.py |  80 +++++++
tempest/lib/services/volume/v2/types_client.py     |  18 +-
.../lib/services/volume/v2/volume_manage_client.py |  37 ++++
tempest/lib/services/volume/v2/volumes_client.py   | 121 +++++-----
tempest/lib/services/volume/v3/__init__.py         |   3 +-
tempest/lib/services/volume/v3/versions_client.py  |  47 ++++
tempest/scenario/manager.py                        | 140 +++++-------
tempest/scenario/test_aggregates_basic_ops.py      |  10 +-
tempest/scenario/test_encrypted_cinder_volumes.py  |   2 +
tempest/scenario/test_minimum_basic.py             |   2 +-
.../scenario/test_network_advanced_server_ops.py   |   8 +-
tempest/scenario/test_network_basic_ops.py         | 154 +++++++------
tempest/scenario/test_network_v6.py                |  70 +++---
tempest/scenario/test_object_storage_basic_ops.py  |   1 +
tempest/scenario/test_security_groups_basic_ops.py |  95 ++++----
tempest/scenario/test_server_advanced_ops.py       |  54 ++---
tempest/scenario/test_shelve_instance.py           |   2 +
tempest/scenario/test_snapshot_pattern.py          |   1 +
tempest/scenario/test_stamp_pattern.py             |  17 +-
tempest/scenario/test_volume_boot_pattern.py       |  44 +---
tempest/scenario/test_volume_migrate_attached.py   |   6 +-
tempest/test.py                                    |  32 ++-
tempest/test_discover/plugins.py                   |  43 +++-
.../lib/common/utils/linux/test_remote_client.py   |  67 ++++++
.../lib/services/compute/test_quotas_client.py     |  24 +-
.../lib/services/compute/test_servers_client.py    | 159 ++++++++++++++
.../services/identity/v3/test_identity_client.py   |  41 ++++
.../identity/v3/test_oauth_consumers_client.py     | 160 ++++++++++++++
.../lib/services/identity/v3/test_roles_client.py  |  77 ++++++-
.../services/identity/v3/test_versions_client.py   |  70 ++++++
.../lib/services/image/v2/test_versions_client.py  |  94 ++++++++
.../lib/services/volume/v3/test_versions_client.py |  91 ++++++++
test-requirements.txt                              |   4 +-
tools/generate-tempest-plugins-list.sh             |   4 +-
tools/pretty_tox.sh                                |  14 --
tools/pretty_tox_serial.sh                         |  16 --
tools/tox_install.sh                               |  30 +++
tools/with_venv.sh                                 |   2 +-
tox.ini                                            |  26 ++-
432 files changed, 6158 insertions(+), 4131 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index d9a9ebb..14c42b3 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr>=1.8 # Apache-2.0
+pbr!=2.1.0,>=2.0.0 # Apache-2.0
@@ -12,2 +12,2 @@ oslo.concurrency>=3.8.0 # Apache-2.0
-oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
-oslo.log>=3.11.0 # Apache-2.0
+oslo.config>=3.22.0 # Apache-2.0
+oslo.log>=3.22.0 # Apache-2.0
@@ -15 +15 @@ oslo.serialization>=1.10.0 # Apache-2.0
-oslo.utils>=3.18.0 # Apache-2.0
+oslo.utils>=3.20.0 # Apache-2.0
@@ -20 +20 @@ python-subunit>=0.0.18 # Apache-2.0/BSD
-stevedore>=1.17.1 # Apache-2.0
+stevedore>=1.20.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index f7d63a8..13950bd 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4 +4 @@
-hacking<0.13,>=0.12.0 # Apache-2.0
+hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
@@ -6 +6 @@ hacking<0.13,>=0.12.0 # Apache-2.0
-sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+sphinx>=1.5.1 # BSD





More information about the Release-announce mailing list