We are satisfied to announce the release of: cloudkitty 12.0.0: Rating as a Service component for OpenStack This release is part of the ussuri release series. The source is available from: https://opendev.org/openstack/cloudkitty Download the package from: https://pypi.org/project/cloudkitty Please report issues through: https://storyboard.openstack.org/#!/project/openstack/cloudkitty For more details, please see below. Changes in cloudkitty 11.0.0..12.0.0 ------------------------------------ 56609c4 [ussuri][goal] Cleanup drop python 2.7 support 48719c5 Use Keystone v3 API by default in fetcher cbdd354 Fix processing of "rate:xxx" re-aggregation configuration 385d205 Standardize aggregation methods and granularities for Gnocchi collector 6dfe2a6 Add support for the range_function field to the Prometheus collector b9ed608 Add support for the query_function field to the Prometheus collector 05eb7b9 tox: Keeping going with docs a80d0e9 Update oslo.policy and oslo.context usage 8a0f80a Allow reaggregation method to be specified in the gnocchi collector 0f0c332 Switch import's behaviour to absolute imports for json module ee8b341 Check for duplicates in "groupby" and "metadata" for each metric eabce23 Raise an exception in case of an invalid configuration file af0613f Fix 500 errors in the API when request context bears no project_id 0dbf9a6 Introduce cloudkitty.utils 3426a66 Build docs with -W daafaad Load drivers only once in the v2 API afef05a [ussuri][goal] Drop python 2.7 support and testing 1948308 Make cloudkitty build reproducible. e8d7373 Replace ModuleNotFoundError with ImportError 0d8a636 Support grouping by timestamp in GET /v2/summary 3c6a346 Add developer documentation about fetcher implementation 1cf2281 Change werkzeug import paths f00a045 Support cross-tenant metrics in monasca collector 19c9006 Fix filtering on dataframe endpoints 06436aa Switch to Ussuri jobs ebe0654 Update .zuul.yaml to run separate tempest tests for each API version cbb947a Use "interface" option for monasca endpoint discovery 62bd5b4 Update master for stable/train f3ec0d2 Add an API migration status table to the roadmap Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 75 +- cloudkitty/api/app.py | 8 +- cloudkitty/api/v1/controllers/report.py | 6 +- cloudkitty/api/v1/controllers/storage.py | 13 +- cloudkitty/api/v1/hooks.py | 23 +- cloudkitty/api/v2/__init__.py | 20 +- cloudkitty/api/v2/base.py | 17 +- cloudkitty/api/v2/dataframes/dataframes.py | 29 +- cloudkitty/api/v2/scope/state.py | 18 +- cloudkitty/api/v2/summary/summary.py | 11 +- cloudkitty/api/v2/utils.py | 6 +- cloudkitty/collector/__init__.py | 24 + cloudkitty/collector/gnocchi.py | 117 +- cloudkitty/collector/monasca.py | 13 +- cloudkitty/collector/prometheus.py | 54 +- cloudkitty/common/context.py | 26 + cloudkitty/common/policies/base.py | 2 +- cloudkitty/common/policy.py | 17 +- cloudkitty/dataframe.py | 6 +- cloudkitty/fetcher/__init__.py | 4 +- cloudkitty/fetcher/keystone.py | 2 +- cloudkitty/orchestrator.py | 5 +- cloudkitty/rating/hash/controllers/mapping.py | 3 +- cloudkitty/rating/hash/controllers/root.py | 4 +- cloudkitty/state.py | 2 +- cloudkitty/storage/__init__.py | 2 +- cloudkitty/storage/v1/hybrid/backends/gnocchi.py | 2 +- cloudkitty/storage/v1/sqlalchemy/__init__.py | 2 +- cloudkitty/storage/v1/sqlalchemy/models.py | 2 +- cloudkitty/storage/v2/elasticsearch/__init__.py | 5 +- cloudkitty/storage/v2/elasticsearch/client.py | 10 +- cloudkitty/storage/v2/influx.py | 50 +- cloudkitty/storage_state/__init__.py | 2 +- .../test_validation.py} | 2 +- cloudkitty/{utils.py => utils/__init__.py} | 23 +- cloudkitty/{json_utils.py => utils/json.py} | 1 + cloudkitty/{tzutils.py => utils/tz.py} | 8 + .../{validation_utils.py => utils/validation.py} | 0 cloudkitty/writer/osrf.py | 2 +- .../configuration/samples/cloudkitty-conf.rst | 5 + .../admin/configuration/samples/policy-yaml.rst | 4 +- .../summary/summary_get_groupby_time.json | 33 + .../v2/dataframes/dataframes_parameters.yml | 60 +- .../api-reference/v2/scope/scope_parameters.yml | 72 +- .../v2/summary/summary_parameters.yml | 52 +- lower-constraints.txt | 2 +- ...-option-gnocchi-collector-249917a14c4fc721.yaml | 7 + ...plicates-metadata-groupby-d5ee99941bb483fd.yaml | 5 + .../notes/drop-py-2-7-fcf8c0613a7bffa8.yaml | 6 + .../fix-dataframe-filtering-282cae643457bb8b.yaml | 6 + .../fix-project-id-none-d40df33fc7b7db23.yaml | 5 + ...ntroduce-cloudkitty.utils-792b9080537405bf.yaml | 5 + ...ception-on-invalid-config-0aece71caa0947fa.yaml | 5 + ...mission-monasca-collector-508b495bc88910ca.yaml | 6 + ...t-groupby-time-v2-summary-48ff5ad671f8c7c5.yaml | 6 + ...scovery-monasca-collector-7477e86cd7e5acf4.yaml | 5 + releasenotes/source/index.rst | 1 + releasenotes/source/train.rst | 6 + requirements.txt | 3 +- setup.cfg | 12 +- setup.py | 8 - test-requirements.txt | 3 +- tox.ini | 23 +- 99 files changed, 2710 insertions(+), 414 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 24b324c..f103346 100644 --- a/requirements.txt +++ b/requirements.txt @@ -31,2 +31 @@ voluptuous>=0.11.1 # BSD License -influxdb>=5.1.0,!=5.2.0,!=5.2.1,!=5.2.2;python_version<'3.0' # MIT -influxdb>=5.1.0;python_version>='3.0' # MIT +influxdb>=5.1.0 # MIT diff --git a/test-requirements.txt b/test-requirements.txt index 4d8c22f..74469c0 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -15,2 +15 @@ mock>=1.2 # BSD -sphinx!=1.6.6,!=1.6.7,>=1.6.2,<2.0.0;python_version=='2.7' # BSD -sphinx!=1.6.6,!=1.6.7,!=2.1.0,>=1.6.2;python_version>='3.4' # BSD +sphinx>=1.8.0,!=2.1.0 # BSD