cloudkitty 23.0.0 (flamingo)
We joyfully announce the release of: cloudkitty 23.0.0 This release is part of the flamingo 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. 23.0.0 ^^^^^^ Security Issues * Previously, cloudkitty-api recorded request token in plain text format when a request does not comply with policy rules or debug log is enabled. This has been fixed and now token is masked in logs. Changes in cloudkitty 22.0.0..23.0.0 ------------------------------------ e023e31 Hide credentials in contexts from logs e66036b Update TOX_CONSTRAINTS_FILE for stable/2025.2 ef8e0b3 Update .gitreview for stable/2025.2 ef3afbe Fix default value for CLOUDKITTY_FETCHER_METRIC 689ac17 Remove tests with Ubuntu 22.04 f903268 Introduce start and end dates on rating rules 293f557 doc: add a install-debian.rst 9ceae0a Zuul: do not use USE_PYTHON3 d57f70c Remove Python 3.9 support cb34885 Log Prometheus query at debug level 092dd09 Replace deprecated datetime.utcfromtimestamp f87d3e4 Replace deprecated datetime.datetime.utcnow c346ad0 Use PortOpt for port option 2457068 CI: Make cloudkitty-grenade-job voting again 2a29211 Add wsgi module to cloudkitty 761b51e Remove tags from README 1b72394 Improve devstack plugin configuration b558e39 CI: Run periodic stable jobs 4be1876 Update master for stable/2025.1 Diffstat (except docs and test files) ------------------------------------- .gitreview | 1 + .zuul.yaml | 17 +-- README.rst | 11 +- cloudkitty/api/v1/types.py | 44 +++++++ cloudkitty/collector/prometheus.py | 2 + cloudkitty/common/custom_session.py | 28 ++++- cloudkitty/common/policy.py | 15 ++- cloudkitty/orchestrator.py | 15 ++- cloudkitty/rating/__init__.py | 2 +- cloudkitty/rating/common/datamodels/__init__.py | 0 cloudkitty/rating/common/datamodels/models.py | 66 ++++++++++ cloudkitty/rating/common/db/__init__.py | 0 cloudkitty/rating/common/db/filters.py | 53 ++++++++ cloudkitty/rating/common/db/migrations.py | 63 ++++++++++ cloudkitty/rating/common/db/models.py | 60 +++++++++ cloudkitty/rating/common/validations/__init__.py | 0 cloudkitty/rating/common/validations/fields.py | 87 +++++++++++++ cloudkitty/rating/hash/__init__.py | 28 +++-- cloudkitty/rating/hash/controllers/mapping.py | 83 ++++++++++-- cloudkitty/rating/hash/datamodels/mapping.py | 7 +- cloudkitty/rating/hash/db/api.py | 22 +++- .../versions/8a591f85865f_extend_hashmapping.py | 70 +++++++++++ cloudkitty/rating/hash/db/sqlalchemy/api.py | 139 ++++++++++++++++++--- cloudkitty/rating/hash/db/sqlalchemy/models.py | 3 +- cloudkitty/rating/noop.py | 2 +- cloudkitty/rating/pyscripts/__init__.py | 8 +- cloudkitty/rating/pyscripts/controllers/script.py | 79 ++++++++++-- cloudkitty/rating/pyscripts/datamodels/script.py | 7 +- cloudkitty/rating/pyscripts/db/api.py | 15 ++- .../versions/c6e4cda29654_extend_pyscript.py | 58 +++++++++ cloudkitty/rating/pyscripts/db/sqlalchemy/api.py | 73 ++++++++--- .../rating/pyscripts/db/sqlalchemy/models.py | 4 +- cloudkitty/storage/v2/influx.py | 2 +- .../gabbi/rating/hash/gabbits/hash-errors.yaml | 19 ++- .../gabbi/rating/hash/gabbits/hash-location.yaml | 56 +++++---- .../gabbi/rating/pyscripts/gabbits/pyscripts.yaml | 35 +++--- cloudkitty/utils/__init__.py | 14 ++- cloudkitty/wsgi/__init__.py | 0 cloudkitty/wsgi/api.py | 24 ++++ contrib/ci/csv_writer.py | 4 +- devstack/plugin.sh | 13 +- devstack/settings | 6 +- ...tart-end-for-rating-rules-deb70656ba687b75.yaml | 21 ++++ .../hide-token-from-log-e29066d6c93f3ed4.yaml | 6 + .../notes/remove-py39-b3a7924f2306bbed.yaml | 5 + .../remove-wsgi-scripts-27d0da6926c2127c.yaml | 29 +++++ releasenotes/source/2025.1.rst | 6 + releasenotes/source/index.rst | 1 + setup.cfg | 3 +- tox.ini | 4 +- 63 files changed, 1418 insertions(+), 257 deletions(-)
participants (1)
-
no-reply@openstack.org