
Follow up on a TODO in image_utils to replace use of psutil with the standard library shutil, which makes it no longer a requirement for the main cinder code. The only driver using psutil is Quobyte, so make it a driver extra requirement, and make some minor adjustments to the quobyte driver and tests so that the driver will check for the availability of psutil and the unit tests can operate without it being present. Change-Id: Icd1a4e59317fe1db0c5419b9aaeb85464b7be863
146 lines
4.9 KiB
INI
146 lines
4.9 KiB
INI
[metadata]
|
|
name = cinder
|
|
description = OpenStack Block Storage
|
|
long_description = file: README.rst
|
|
author = OpenStack
|
|
author_email = openstack-discuss@lists.openstack.org
|
|
url = https://docs.openstack.org/cinder/latest/
|
|
python_requires = >=3.8
|
|
classifiers =
|
|
Environment :: OpenStack
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: Implementation :: CPython
|
|
Programming Language :: Python :: 3 :: Only
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.8
|
|
Programming Language :: Python :: 3.9
|
|
Programming Language :: Python :: 3.10
|
|
Programming Language :: Python :: 3.11
|
|
project_urls:
|
|
Source=https://opendev.org/openstack/cinder
|
|
Tracker=https://bugs.launchpad.net/cinder
|
|
|
|
[files]
|
|
data_files =
|
|
etc/cinder =
|
|
etc/cinder/api-paste.ini
|
|
etc/cinder/rootwrap.conf
|
|
etc/cinder/resource_filters.json
|
|
etc/cinder/rootwrap.d = etc/cinder/rootwrap.d/*
|
|
packages =
|
|
cinder
|
|
|
|
[entry_points]
|
|
cinder.scheduler.filters =
|
|
AvailabilityZoneFilter = cinder.scheduler.filters.availability_zone_filter:AvailabilityZoneFilter
|
|
CapabilitiesFilter = cinder.scheduler.filters.capabilities_filter:CapabilitiesFilter
|
|
CapacityFilter = cinder.scheduler.filters.capacity_filter:CapacityFilter
|
|
DifferentBackendFilter = cinder.scheduler.filters.affinity_filter:DifferentBackendFilter
|
|
DriverFilter = cinder.scheduler.filters.driver_filter:DriverFilter
|
|
JsonFilter = cinder.scheduler.filters.json_filter:JsonFilter
|
|
RetryFilter = cinder.scheduler.filters.ignore_attempted_hosts_filter:IgnoreAttemptedHostsFilter
|
|
SameBackendFilter = cinder.scheduler.filters.affinity_filter:SameBackendFilter
|
|
InstanceLocalityFilter = cinder.scheduler.filters.instance_locality_filter:InstanceLocalityFilter
|
|
cinder.scheduler.weights =
|
|
AllocatedCapacityWeigher = cinder.scheduler.weights.capacity:AllocatedCapacityWeigher
|
|
CapacityWeigher = cinder.scheduler.weights.capacity:CapacityWeigher
|
|
ChanceWeigher = cinder.scheduler.weights.chance:ChanceWeigher
|
|
GoodnessWeigher = cinder.scheduler.weights.goodness:GoodnessWeigher
|
|
VolumeNumberWeigher = cinder.scheduler.weights.volume_number:VolumeNumberWeigher
|
|
oslo.config.opts =
|
|
cinder = cinder.opts:list_opts
|
|
oslo.config.opts.defaults =
|
|
cinder = cinder.common.config:set_external_library_defaults
|
|
oslo.policy.enforcer =
|
|
cinder = cinder.policy:get_enforcer
|
|
oslo.policy.policies =
|
|
# The sample policies will be ordered by entry point and then by list
|
|
# returned from that entry point. If more control is desired split out each
|
|
# list_rules method into a separate entry point rather than using the
|
|
# aggregate method.
|
|
cinder = cinder.policies:list_rules
|
|
console_scripts =
|
|
cinder-api = cinder.cmd.api:main
|
|
cinder-backup = cinder.cmd.backup:main
|
|
cinder-manage = cinder.cmd.manage:main
|
|
cinder-rootwrap = oslo_rootwrap.cmd:main
|
|
cinder-rtstool = cinder.cmd.rtstool:main
|
|
cinder-scheduler = cinder.cmd.scheduler:main
|
|
cinder-status = cinder.cmd.status:main
|
|
cinder-volume = cinder.cmd.volume:main
|
|
cinder-volume-usage-audit = cinder.cmd.volume_usage_audit:main
|
|
wsgi_scripts =
|
|
cinder-wsgi = cinder.wsgi.wsgi:initialize_application
|
|
|
|
[extras]
|
|
all =
|
|
websocket-client>=1.3.2 # LGPLv2+
|
|
pyOpenSSL>=17.5.0 # Apache-2.0
|
|
storops>=0.5.10 # Apache-2.0
|
|
pywbem>=0.7.0 #LGPLv2.1+
|
|
python-3parclient>=4.2.10 # Apache-2.0
|
|
krest>=1.3.0 # Apache-2.0
|
|
infinisdk>=103.0.1 # BSD-3
|
|
purestorage>=1.17.0 # BSD
|
|
rsd-lib>=1.1.0 # Apache-2.0
|
|
storpool>=4.0.0 # Apache-2.0
|
|
storpool.spopenstack>=2.2.1 # Apache-2.0
|
|
dfs-sdk>=1.2.25 # Apache-2.0
|
|
rbd-iscsi-client>=0.1.8 # Apache-2.0
|
|
python-linstor>=1.7.0 # LGPLv3
|
|
psutil>=5.7.2 # BSD
|
|
datacore =
|
|
websocket-client>=1.3.2 # LGPLv2+
|
|
powermax =
|
|
pyOpenSSL>=17.5.0 # Apache-2.0
|
|
vnx =
|
|
storops>=0.5.10 # Apache-2.0
|
|
unity =
|
|
storops>=0.5.10 # Apache-2.0
|
|
fujitsu =
|
|
pywbem>=0.7.0 #LGPLv2.1+
|
|
hpe3par =
|
|
python-3parclient>=4.2.10 # Apache-2.0
|
|
kaminario =
|
|
krest>=1.3.0 # Apache-2.0
|
|
ds8k =
|
|
pyOpenSSL>=17.5.0 # Apache-2.0
|
|
infinidat =
|
|
infinisdk>=103.0.1 # BSD-3
|
|
pure =
|
|
purestorage>=1.17.0 # BSD
|
|
rsd =
|
|
rsd-lib>=1.1.0 # Apache-2.0
|
|
storpool =
|
|
storpool>=4.0.0 # Apache-2.0
|
|
storpool.spopenstack>=2.2.1 # Apache-2.0
|
|
datera =
|
|
dfs-sdk>=1.2.25 # Apache-2.0
|
|
rbd_iscsi =
|
|
rbd-iscsi-client>=0.1.8 # Apache-2.0
|
|
linstor =
|
|
python-linstor>=1.7.0 # LGPLv3
|
|
quobyte =
|
|
psutil>=5.7.2 # BSD
|
|
|
|
|
|
[mypy]
|
|
show_column_numbers = true
|
|
show_error_context = true
|
|
ignore_missing_imports = true
|
|
follow_imports = skip
|
|
incremental = true
|
|
check_untyped_defs = true
|
|
warn_unused_ignores = true
|
|
show_error_codes = true
|
|
pretty = true
|
|
html_report = mypy-report
|
|
no_implicit_optional = true
|
|
|
|
[options]
|
|
packages = cinder
|