From 8ef93aa517c38b9295c391657c259abe9c31b649 Mon Sep 17 00:00:00 2001 From: Andrey Kurilin Date: Mon, 8 Oct 2018 15:45:50 +0300 Subject: [PATCH] Propose a new release 1.3.0 Also, this patch updates upper-constraints and fixes failed tests which started failing due to incompatible change in Rally framework Change-Id: Icadcc9260124c0d0fc720f0e30444752230f00a5 --- CHANGELOG.rst | 41 ++++++---- tests/unit/doc/test_task_samples.py | 3 +- tests/unit/rally_jobs/test_jobs.py | 3 +- upper-constraints.txt | 121 +++++++++------------------- 4 files changed, 67 insertions(+), 101 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 102ed64d..911b55e0 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -16,24 +16,28 @@ Changelog .. Release notes for existing releases are MUTABLE! If there is something that was missed or can be improved, feel free to change it! -unreleased ----------- +[1.3.0] - 2018-10-08 +-------------------- Added ~~~~~ * Support Python 3.7 environment. -* ``https_cert`` and ``https_key`` options of the spec for +* New options ``https_cert`` and ``https_key`` are added to the spec for ``existing@openstack`` platform to represent client certificate bundle and key files. Also the support for appropriate system environment variables ( ``OS_CERT``, ``OS_KEY``) is added. -* Support client api option while deploying platform. -* Added Cinder V3 support and make it as the default version. You could use +* ``existing@openstack`` plugin now supports a new field ``api_info`` for + specifying not default API version/service_type to use. The format and + purpose is similar to `api_versions + `_ task + context. +* Added Cinder V3 support and use it as the default version. You could use api_versions context or api_info option of the spec to choose the proper version. -* Extended documentation for ``existing@openstack`` plugin which includes - accepted system environment variables for ``rally env create --from-sysenv`` - action. +* The documentation for ``existing@openstack`` plugin is extended with + information about accepted system environment variables via + ``rally env create --from-sysenv`` command. Changed ~~~~~~~ @@ -41,11 +45,13 @@ Changed * Our requirements are updated as like upper-constraints (the list of suggested tested versions to use) * Error messages become more user-friendly in ``rally env check``. -* Deprecate api_info argument of all clients which inherits from OSClient - and deprecate api_version argument of cleanup.manager.cleanup, because - api information has been moved into credentials object. -* `Docker image `_ now - supports mysql and postgres as db backends. +* Deprecate api_info argument of all clients plugins which inherits from + OSClient and deprecate api_version argument of + ``rally_openstack.cleanup.manager.cleanup``. API information (not default + version/service_type to use) has been included into credentials dictionary. +* The proper packages are added to `docker image + `_ to support MySQL and + PostgreSQL as DB backends. * Rename an action ``nova.create_image`` to ``nova.snapshot_server`` for better understanding for what is actually done. @@ -53,21 +59,22 @@ Removed ~~~~~~~ * Remove deprecated wrappers (rally_openstack.wrappers) and - helpers (scenario utils) for keystone, cinder, glance + helpers (scenario utils) for Keystone, Cinder, Glance services. The new service model should be used instead (see ``rally_openstack.services`` module for more details) - while developing custom plugins. All the inner plugins used + while developing custom plugins. All the inner plugins have been using the new code for a long time. * Remove deprecated properties *insecure*, *cacert* (use *https_insecure* and *https_cacert* properties instead) and method *list_services* (use - appropriate method of Clients object) of OpenStackCredentials object. + appropriate method of Clients object) from + *rally_openstack.credentials.OpenStackCredentials* object. * Remove deprecated in Rally 0.10.0 ``NovaImages.list_images`` scenario. Fixed ~~~~~ * Keypairs are now properly cleaned up after the execution of Magnum - tests. + workloads. [1.2.0] - 2018-06-25 diff --git a/tests/unit/doc/test_task_samples.py b/tests/unit/doc/test_task_samples.py index a329685f..e38809bd 100644 --- a/tests/unit/doc/test_task_samples.py +++ b/tests/unit/doc/test_task_samples.py @@ -23,6 +23,7 @@ from rally import api from rally.task import context from rally.task import engine from rally.task import scenario +from rally.task import task_cfg import yaml import rally_openstack @@ -86,7 +87,7 @@ class TaskSampleTestCase(test.TestCase): except Exception: print(traceback.format_exc()) self.fail("Invalid JSON file: %s" % path) - eng = engine.TaskEngine(engine.TaskConfig(task_config), + eng = engine.TaskEngine(task_cfg.TaskConfig(task_config), mock.MagicMock(), mock.Mock()) eng.validate(only_syntax=True) except Exception: diff --git a/tests/unit/rally_jobs/test_jobs.py b/tests/unit/rally_jobs/test_jobs.py index 726cb19a..ec89b497 100644 --- a/tests/unit/rally_jobs/test_jobs.py +++ b/tests/unit/rally_jobs/test_jobs.py @@ -22,6 +22,7 @@ from rally import api from rally.common.plugin import discover from rally.common import yamlutils as yaml from rally.task import engine +from rally.task import task_cfg from tests.unit import fakes from tests.unit import test @@ -79,7 +80,7 @@ class RallyJobsTestCase(test.TestCase): task_inst = api._Task(api.API(skip_db_check=True)) task = task_inst.render_template( task_template=task_file.read(), **args) - task = engine.TaskConfig(yaml.safe_load(task)) + task = task_cfg.TaskConfig(yaml.safe_load(task)) task_obj = fakes.FakeTask({"uuid": full_path}) eng = engine.TaskEngine(task, task_obj, mock.Mock()) diff --git a/upper-constraints.txt b/upper-constraints.txt index bc47489f..1ae6785d 100644 --- a/upper-constraints.txt +++ b/upper-constraints.txt @@ -1,21 +1,17 @@ -alabaster===0.7.11 +adal===1.1.0 alembic===0.9.7 -ansible===2.6.2 -apipkg===1.5 +ansible===2.7.0 appdirs===1.4.3 argparse===1.2.1 asn1crypto===0.24.0 -atomicwrites===1.1.5 -attrs===18.1.0 Babel===2.6.0 -backports.shutil-get-terminal-size===1.0.0 bcrypt===3.1.4 boto===2.49.0 cachetools===2.1.0 -certifi===2018.4.16 +certifi===2018.8.24 cffi===1.11.5 chardet===3.0.4 -click===6.7 +Click===7.0 cliff===2.13.0 cmd2===0.8.8;python_version=='2.7' cmd2===0.9.3;python_version=='3.4' @@ -23,50 +19,37 @@ cmd2===0.9.3;python_version=='3.5' cmd2===0.9.3;python_version=='3.6' cmd2===0.9.3;python_version=='3.7' contextlib2===0.5.5 -coverage===4.5.1 -cryptography===2.3 -ddt===1.2.0 +cryptography===2.3.1 debtcollector===1.20.0 decorator===4.3.0 -deprecation===2.0.5 +deprecation===2.0.6 docutils===0.14 -dogpile.cache===0.6.6 +dogpile.cache===0.6.7 enum34===1.1.6 -execnet===1.5.0 extras===1.0.0 fasteners===0.14.1 fixtures===3.0.0 -flake8===2.6.2 funcsigs===1.0.2 functools32===3.2.3.post2 -future===0.16.0 futures===3.2.0 futurist===1.7.0 -gnocchiclient===7.0.2 -google-auth===1.5.0 -hacking===1.1.0 +gnocchiclient===7.0.5 +google-auth===1.5.1 idna===2.7 -imagesize===1.0.0 ipaddress===1.0.22 -ipython===5.8.0 -ipython-genutils===0.2.0 iso8601===0.1.12 Jinja2===2.10 jmespath===0.9.3 jsonpatch===1.23 jsonpointer===2.0 jsonschema===2.6.0 -keystoneauth1===3.10.0 +keystoneauth1===3.11.0 kubernetes===7.0.0 linecache2===1.0.0 Mako===1.0.7 MarkupSafe===1.0 -mccabe===0.5.3 -mock===2.0.0 monotonic===1.5 -more-itertools===4.2.0 -morph===0.1.3 -mox3===0.26.0 +morph===0.1.4 msgpack===0.5.6 munch===2.3.2 murano-pkg-check===0.3.0 @@ -75,51 +58,34 @@ netifaces===0.10.7 oauthlib===2.1.0 openstacksdk===0.17.2 os-client-config===1.31.2 -os-faults===0.1.17 +os-faults===0.1.18 os-service-types===1.3.0 osc-lib===1.11.1 -oslo.concurrency===3.27.0 -oslo.config===6.4.0 +oslo.concurrency===3.28.1 +oslo.config===6.5.1 oslo.context===2.21.0 -oslo.db===4.40.0 -oslo.i18n===3.21.0 -oslo.log===3.39.0 -oslo.serialization===2.27.0 -oslo.utils===3.36.4 -oslosphinx===4.18.0 -oslotest===3.6.0 -osprofiler===2.3.0 -packaging===17.1 -paramiko===2.4.1 -pathlib2===2.3.2 -pbr===4.2.0 -pexpect===4.6.0 -pickleshare===0.7.4 -pip===18.0 -pluggy===0.6.0 +oslo.db===4.41.1 +oslo.i18n===3.22.1 +oslo.log===3.40.1 +oslo.serialization===2.28.1 +oslo.utils===3.37.0 +osprofiler===2.4.1 +packaging===18.0 +paramiko===2.4.2 +pbr===4.3.0 +pip===18.1 ply===3.11 prettytable===0.7.2 -prompt-toolkit===1.0.15 -ptyprocess===0.6.0 -py===1.5.4 -pyasn1===0.4.3 +pyasn1===0.4.4 pyasn1-modules===0.2.2 -pycodestyle===2.0.0 -pycparser===2.18 -pyflakes===1.2.3 -pyghmi===1.1.0 -Pygments===2.2.0 +pycparser===2.19 +pyghmi===1.2.14 pyinotify===0.9.6 -PyNaCl===1.2.1 +PyJWT===1.6.4 +PyNaCl===1.3.0 pyOpenSSL===18.0.0 -pyparsing===2.2.0 -pyperclip===1.6.4 -pytest===3.6.3 -pytest-cov===2.5.1 -pytest-forked===0.2 -pytest-html===1.19.0 -pytest-metadata===1.7.0 -pytest-xdist===1.22.5 +pyparsing===2.2.2 +pyperclip===1.7.0 Python===2.7.15rc1 python-ceilometerclient===2.9.0 python-cinderclient===4.0.1 @@ -136,10 +102,10 @@ python-mimeparse===1.6.0 python-mistralclient===3.7.0 python-monascaclient===1.12.1 python-muranoclient===1.1.1 -python-neutronclient===6.9.0 +python-neutronclient===6.10.0 python-novaclient===11.0.0 python-octaviaclient===1.6.0 -python-openstackclient===3.16.0 +python-openstackclient===3.16.1 python-saharaclient===2.0.0 python-senlinclient===1.8.0 python-subunit===1.3.0 @@ -149,25 +115,19 @@ python-watcherclient===2.1.0 python-zaqarclient===1.10.0 pytz===2018.5 PyYAML===3.13 -rally===1.1.0 +rally===1.2.1 requests===2.19.1 requests-oauthlib===1.0.0 requestsexceptions===1.4.0 rfc3986===1.1.0 -rsa===3.4.2 -scandir===1.7 +rsa===4.0 semantic-version===2.6.0 -setuptools===40.0.0 -simplegeneric===0.8.1 +setuptools===40.4.3 simplejson===3.16.0 six===1.11.0 -snowballstemmer===1.2.1 -Sphinx===1.7.6 -sphinxcontrib-websupport===1.1.0 -SQLAlchemy===1.2.10 +SQLAlchemy===1.2.12 sqlalchemy-migrate===0.11.0 sqlparse===0.2.4 -stestr===2.1.0 stevedore===1.29.0 subprocess32===3.5.2 Tempita===0.5.2 @@ -175,19 +135,16 @@ testresources===2.0.1 testscenarios===0.5.0 testtools===2.3.0 traceback2===1.4.0 -traitlets===4.3.2 -typing===3.6.4 ujson===1.35 unicodecsv===0.14.1 unittest2===1.1.0 urllib3===1.23 virtualenv===16.0.0 -voluptuous===0.11.1 warlock===1.3.0 wcwidth===0.1.7 WebOb===1.8.2 -websocket-client===0.48.0 -wheel===0.31.1 +websocket-client===0.53.0 +wheel===0.32.1 wrapt===1.10.11 wsgiref===0.1.2 yaql===1.1.3