Skip to content

Commit 13c0dcf

Browse files
committed
Migrate setup configuration to pyproject.toml
Change-Id: I631bab57725cb4d91c09a954756104feecb4876d Signed-off-by: François Magimel <magimel.francois@gmail.com>
1 parent 06611a8 commit 13c0dcf

2 files changed

Lines changed: 81 additions & 72 deletions

File tree

pyproject.toml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,84 @@
11
[build-system]
22
requires = ["pbr>=6.1.1"]
33
build-backend = "pbr.build"
4+
5+
[project]
6+
name = "cloudkitty"
7+
description = "Rating as a Service component for OpenStack"
8+
authors = [
9+
{name = "OpenStack", email = "openstack-discuss@lists.openstack.org"},
10+
]
11+
readme = {file = "README.rst", content-type = "text/x-rst"}
12+
license = "Apache-2.0"
13+
license-files = ["LICENSE"]
14+
dynamic = ["version", "dependencies"]
15+
requires-python = ">=3.10"
16+
classifiers = [
17+
"Environment :: OpenStack",
18+
"Intended Audience :: Information Technology",
19+
"Intended Audience :: System Administrators",
20+
"Operating System :: POSIX :: Linux",
21+
"Programming Language :: Python",
22+
"Programming Language :: Python :: 3",
23+
"Programming Language :: Python :: 3.10",
24+
"Programming Language :: Python :: 3.11",
25+
"Programming Language :: Python :: 3.12",
26+
"Programming Language :: Python :: 3.13",
27+
"Programming Language :: Python :: 3 :: Only",
28+
]
29+
30+
[project.urls]
31+
Homepage = "https://docs.openstack.org/cloudkitty"
32+
Repository = "https://opendev.org/openstack/cloudkitty/"
33+
34+
[project.scripts]
35+
cloudkitty-dbsync = "cloudkitty.cli.dbsync:main"
36+
cloudkitty-processor = "cloudkitty.cli.processor:main"
37+
cloudkitty-storage-init = "cloudkitty.cli.storage:main"
38+
cloudkitty-status = "cloudkitty.cli.status:main"
39+
40+
[project.entry-points."oslo.policy.enforcer"]
41+
cloudkitty = "cloudkitty.common.policy:get_enforcer"
42+
43+
[project.entry-points."oslo.policy.policies"]
44+
cloudkitty = "cloudkitty.common.policies:list_rules"
45+
46+
[project.entry-points."oslo.config.opts"]
47+
"cloudkitty.common.config" = "cloudkitty.common.config:list_opts"
48+
49+
[project.entry-points."oslo.config.opts.defaults"]
50+
"cloudkitty.common.config" = "cloudkitty.common.defaults:set_config_defaults"
51+
52+
[project.entry-points."cloudkitty.collector.backends"]
53+
gnocchi = "cloudkitty.collector.gnocchi:GnocchiCollector"
54+
prometheus = "cloudkitty.collector.prometheus:PrometheusCollector"
55+
aetos = "cloudkitty.collector.aetos:AetosCollector"
56+
57+
[project.entry-points."cloudkitty.fetchers"]
58+
keystone = "cloudkitty.fetcher.keystone:KeystoneFetcher"
59+
source = "cloudkitty.fetcher.source:SourceFetcher"
60+
gnocchi = "cloudkitty.fetcher.gnocchi:GnocchiFetcher"
61+
prometheus = "cloudkitty.fetcher.prometheus:PrometheusFetcher"
62+
63+
[project.entry-points."cloudkitty.rating.processors"]
64+
noop = "cloudkitty.rating.noop:Noop"
65+
hashmap = "cloudkitty.rating.hash:HashMap"
66+
pyscripts = "cloudkitty.rating.pyscripts:PyScripts"
67+
68+
[project.entry-points."cloudkitty.storage.v1.backends"]
69+
sqlalchemy = "cloudkitty.storage.v1.sqlalchemy:SQLAlchemyStorage"
70+
hybrid = "cloudkitty.storage.v1.hybrid:HybridStorage"
71+
72+
[project.entry-points."cloudkitty.storage.v2.backends"]
73+
influxdb = "cloudkitty.storage.v2.influx:InfluxStorage"
74+
elasticsearch = "cloudkitty.storage.v2.elasticsearch:ElasticsearchStorage"
75+
opensearch = "cloudkitty.storage.v2.opensearch:OpenSearchStorage"
76+
loki = "cloudkitty.storage.v2.loki:LokiStorage"
77+
78+
[project.entry-points."cloudkitty.storage.hybrid.backends"]
79+
gnocchi = "cloudkitty.storage.v1.hybrid.backends.gnocchi:GnocchiStorage"
80+
81+
[tool.setuptools]
82+
packages = [
83+
"cloudkitty",
84+
]

setup.cfg

Lines changed: 0 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,2 @@
11
[metadata]
22
name = cloudkitty
3-
summary = Rating as a Service component for OpenStack
4-
description_file =
5-
README.rst
6-
author = OpenStack
7-
author_email = openstack-discuss@lists.openstack.org
8-
home_page = https://docs.openstack.org/cloudkitty/latest
9-
python_requires = >=3.10
10-
classifier =
11-
Environment :: OpenStack
12-
Intended Audience :: Information Technology
13-
Intended Audience :: System Administrators
14-
License :: OSI Approved :: Apache Software License
15-
Operating System :: POSIX :: Linux
16-
Programming Language :: Python
17-
Programming Language :: Python :: 3
18-
Programming Language :: Python :: 3.10
19-
Programming Language :: Python :: 3.11
20-
Programming Language :: Python :: 3.12
21-
Programming Language :: Python :: 3.13
22-
Programming Language :: Python :: 3 :: Only
23-
24-
[files]
25-
packages =
26-
cloudkitty
27-
28-
[entry_points]
29-
console_scripts =
30-
cloudkitty-dbsync = cloudkitty.cli.dbsync:main
31-
cloudkitty-processor = cloudkitty.cli.processor:main
32-
cloudkitty-storage-init = cloudkitty.cli.storage:main
33-
cloudkitty-status = cloudkitty.cli.status:main
34-
35-
oslo.policy.enforcer =
36-
cloudkitty = cloudkitty.common.policy:get_enforcer
37-
38-
oslo.policy.policies =
39-
cloudkitty = cloudkitty.common.policies:list_rules
40-
41-
oslo.config.opts =
42-
cloudkitty.common.config = cloudkitty.common.config:list_opts
43-
44-
oslo.config.opts.defaults =
45-
cloudkitty.common.config = cloudkitty.common.defaults:set_config_defaults
46-
47-
cloudkitty.collector.backends =
48-
gnocchi = cloudkitty.collector.gnocchi:GnocchiCollector
49-
prometheus = cloudkitty.collector.prometheus:PrometheusCollector
50-
aetos = cloudkitty.collector.aetos:AetosCollector
51-
52-
cloudkitty.fetchers =
53-
keystone = cloudkitty.fetcher.keystone:KeystoneFetcher
54-
source = cloudkitty.fetcher.source:SourceFetcher
55-
gnocchi = cloudkitty.fetcher.gnocchi:GnocchiFetcher
56-
prometheus = cloudkitty.fetcher.prometheus:PrometheusFetcher
57-
58-
cloudkitty.rating.processors =
59-
noop = cloudkitty.rating.noop:Noop
60-
hashmap = cloudkitty.rating.hash:HashMap
61-
pyscripts = cloudkitty.rating.pyscripts:PyScripts
62-
63-
cloudkitty.storage.v1.backends =
64-
sqlalchemy = cloudkitty.storage.v1.sqlalchemy:SQLAlchemyStorage
65-
hybrid = cloudkitty.storage.v1.hybrid:HybridStorage
66-
67-
cloudkitty.storage.v2.backends =
68-
influxdb = cloudkitty.storage.v2.influx:InfluxStorage
69-
elasticsearch = cloudkitty.storage.v2.elasticsearch:ElasticsearchStorage
70-
opensearch = cloudkitty.storage.v2.opensearch:OpenSearchStorage
71-
loki = cloudkitty.storage.v2.loki:LokiStorage
72-
73-
cloudkitty.storage.hybrid.backends =
74-
gnocchi = cloudkitty.storage.v1.hybrid.backends.gnocchi:GnocchiStorage

0 commit comments

Comments
 (0)