Files
cyborg/setup.cfg
Sean Mooney 3724b467b4 Add support for pyproject.toml and wsgi module paths
pip 23.1 removed the "setup.py install" fallback for projects that do
not have pyproject.toml and now uses a pyproject.toml which is vendored
in pip [1][2]. pip 24.2 has now deprecated a similar fallback to
"setup.py develop" and plans to fully remove this in pip 25.0 [3][4][5].
pbr supports editable installs since 6.0.0

pip 25.1 has now been released and the removal is complete.
by adding our own minimal pyproject.toml to ensure we are using the
correct build system.

This change also requires that we adapt how we generate our wsgi
entry point. when pyproject.toml is used the wsgi console script is
not generated in an editbale install such as is used in devstck

To adress this we need to refactor our usage of our wsgi applciation
to use a module path instead. This change does not remove
the declaration of our wsgi_script entry point but it shoudl
be considered deprecated and it will be removed in the future.

To unblock the gate the devstack plugin is modifed to to deploy
using the wsgi module instead of the console script.

[1] https://pip.pypa.io/en/stable/news/#v23-1
[2] pypa/pip#8368
[3] https://pip.pypa.io/en/stable/news/#v24-2
[4] pypa/pip#11457
[5] https://ichard26.github.io/blog/2024/08/whats-new-in-pip-24.2/
Closes-Bug: #2109583

Change-Id: I31fb6bff75ce27aedd94f7f73b7bfdd706127fc2
2025-05-14 16:12:35 +01:00

65 lines
2.4 KiB
INI

[metadata]
name = openstack-cyborg
summary = Distributed Acceleration Management as a Service
description_file =
README.rst
author = OpenStack
author_email = openstack-discuss@lists.openstack.org
home_page = https://docs.openstack.org/cyborg/latest/
python_requires = >=3.10
classifier =
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.10
Programming Language :: Python :: 3.11
[files]
packages =
cyborg
data_files =
etc/cyborg =
etc/cyborg/policy.yaml
etc/cyborg/api-paste.ini
[entry_points]
oslo.policy.policies =
cyborg.api = cyborg.policies:list_policies
console_scripts =
cyborg-api = cyborg.cmd.api:main
cyborg-conductor = cyborg.cmd.conductor:main
cyborg-dbsync = cyborg.cmd.dbsync:main
cyborg-agent = cyborg.cmd.agent:main
cyborg-status = cyborg.cmd.status:main
# NOTE(sean-k-mooney): this should be removed in 2026.1
# as this will eventually stop working entirely.
wsgi_scripts =
cyborg-wsgi-api = cyborg.api.wsgi_app:init_application
cyborg.database.migration_backend =
sqlalchemy = cyborg.db.sqlalchemy.migration
cyborg.accelerator.driver =
intel_fpga_driver = cyborg.accelerator.drivers.fpga.intel.driver:IntelFPGADriver
inspur_fpga_driver = cyborg.accelerator.drivers.fpga.inspur.driver:InspurFPGADriver
xilinx_fpga_driver = cyborg.accelerator.drivers.fpga.xilinx.driver:XilinxFPGADriver
nvmf_spdk_driver = cyborg.accelerator.drivers.spdk.nvmf.nvmf:NVMFDRIVER
nvidia_gpu_driver = cyborg.accelerator.drivers.gpu.nvidia.driver:NVIDIAGPUDriver
fake_driver = cyborg.accelerator.drivers.fake:FakeDriver
huawei_ascend_driver = cyborg.accelerator.drivers.aichip.huawei.ascend:AscendDriver
intel_qat_driver = cyborg.accelerator.drivers.qat.intel.driver:IntelQATDriver
intel_nic_driver = cyborg.accelerator.drivers.nic.intel.driver:IntelNICDriver
inspur_nvme_ssd_driver = cyborg.accelerator.drivers.ssd.inspur.driver:InspurNVMeSSDDriver
pci_driver = cyborg.accelerator.drivers.pci.pci.driver:PCIDriver
oslo.config.opts =
cyborg = cyborg.conf.opts:list_opts