[build-system] requires = ["pbr>=6.1.1"] build-backend = "pbr.build" [project] name = "nova" description = "Cloud computing fabric controller" authors = [ {name = "OpenStack", email = "openstack-discuss@lists.openstack.org"}, ] readme = {file = "README.rst", content-type = "text/x-rst"} license = {text = "Apache-2.0"} dynamic = ["version", "dependencies"] requires-python = ">=3.10" classifiers = [ "Development Status :: 5 - Production/Stable", "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 :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: Implementation :: CPython", ] [project.optional-dependencies] osprofiler = [ "osprofiler>=1.4.0", # Apache-2.0 ] zvm = [ "zVMCloudConnector>=1.3.0;sys_platform!='win32'", # Apache 2.0 License ] vmware = [ "oslo.vmware>=3.6.0", # Apache-2.0 ] [project.urls] "Bug Tracker" = "https://bugs.launchpad.net/nova/" "Documentation" = "https://docs.openstack.org/nova/" "Source Code" = "https://opendev.org/openstack/nova" [project.scripts] nova-compute = "nova.cmd.compute:main" nova-conductor = "nova.cmd.conductor:main" nova-manage = "nova.cmd.manage:main" nova-novncproxy = "nova.cmd.novncproxy:main" nova-policy = "nova.cmd.policy:main" nova-rootwrap = "oslo_rootwrap.cmd:main" nova-rootwrap-daemon = "oslo_rootwrap.cmd:daemon" nova-scheduler = "nova.cmd.scheduler:main" nova-serialproxy = "nova.cmd.serialproxy:main" nova-spicehtml5proxy = "nova.cmd.spicehtml5proxy:main" nova-status = "nova.cmd.status:main" [project.entry-points."oslo.config.opts"] "nova.conf" = "nova.conf.opts:list_opts" [project.entry-points."oslo.config.opts.defaults"] "nova.conf" = "nova.config:set_lib_defaults" [project.entry-points."oslo.policy.enforcer"] nova = "nova.policy:get_enforcer" [project.entry-points."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. nova = "nova.policies:list_rules" [project.entry-points."nova.api.extra_spec_validators"] accel = "nova.api.validation.extra_specs.accel" aggregate_instance_extra_specs = "nova.api.validation.extra_specs.aggregate_instance_extra_specs" capabilities = "nova.api.validation.extra_specs.capabilities" hw = "nova.api.validation.extra_specs.hw" hw_rng = "nova.api.validation.extra_specs.hw_rng" hw_video = "nova.api.validation.extra_specs.hw_video" null = "nova.api.validation.extra_specs.null" os = "nova.api.validation.extra_specs.os" pci_passthrough = "nova.api.validation.extra_specs.pci_passthrough" quota = "nova.api.validation.extra_specs.quota" resources = "nova.api.validation.extra_specs.resources" traits = "nova.api.validation.extra_specs.traits" vmware = "nova.api.validation.extra_specs.vmware" [project.entry-points."nova.compute.monitors.cpu"] virt_driver = "nova.compute.monitors.cpu.virt_driver:Monitor" [tool.setuptools] packages = [ "nova" ] [tool.setuptools.data-files] "etc/nova" = [ "etc/nova/api-paste.ini", "etc/nova/rootwrap.conf", ] "etc/nova/rootwrap.d" = [ "etc/nova/rootwrap.d/*", ] [tool.autopep8] aggressive = 3 in-place = true recursive = true [tool.codespell] skip = "*.po,*.js,*.css,*.html,*.svg,HACKING.py,*hacking*,*build*,*_static*,doc/dictionary.txt,*.pyc,*.inv,*.gz,*.jpg,*.png,*.vsd,*.graffle,*.json" count = true quiet-level = 4 [tool.mypy] python_version = "3.10" 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 files = [ "nova/compute/manager.py", "nova/compute/pci_placement_translator.py", "nova/crypto.py", "nova/filesystem.py", "nova/limit/local.py", "nova/limit/placement.py", "nova/network/neutron.py", "nova/pci/*.py", "nova/privsep/path.py", "nova/scheduler/client/report.py", "nova/scheduler/request_filter.py", "nova/scheduler/utils.py", "nova/utils.py", "nova/virt/driver.py", "nova/virt/hardware.py", "nova/virt/libvirt/machine_type_utils.py", "nova/virt/libvirt/__init__.py", "nova/virt/libvirt/cpu/__init__.py", "nova/virt/libvirt/cpu/api.py", "nova/virt/libvirt/cpu/core.py", "nova/virt/libvirt/driver.py", "nova/virt/libvirt/event.py", "nova/virt/libvirt/guest.py", "nova/virt/libvirt/host.py", "nova/virt/libvirt/utils.py", ]