lisa/pyproject.toml

192 строки
3.7 KiB
TOML

[build-system]
requires = ["setuptools >= 65", "setuptools_scm[toml] >= 6.2"]
build-backend = "setuptools.build_meta"
[project]
name = "lisa"
description = "Linux Integration Services Automation"
classifiers = [
"Programming Language :: Python :: 3",
"Development Status :: 5 - Production/Stable",
"Topic :: Software Development :: Testing",
]
dependencies = [
"assertpy ~= 1.1",
"func-timeout ~= 4.3.5",
"dataclasses-json ~= 0.5.2",
"paramiko ~= 2.12.0",
"pluggy ~= 0.13.1",
"python-dateutil ~= 2.8.1",
"pytest-html ~= 3.2.0",
"PyYAML ~= 6.0.1",
"randmac ~= 0.1",
"retry ~= 0.9.2",
"semver ~= 2.13.0",
"simpleeval ~= 0.9.12",
"spurplus ~= 2.3.4",
"websockets ~= 10.3",
]
dynamic = ["version"]
license = {text = "MIT"}
readme = "README.rst"
requires-python = ">=3.8"
[project.optional-dependencies]
aws = [
"boto3 ~= 1.21.37",
]
azure = [
"azure-identity ~= 1.9.0",
"azure-mgmt-compute ~= 26.1.0",
"azure-mgmt-keyvault ~= 10.2.3",
"azure-mgmt-marketplaceordering ~= 1.1.0",
"azure-mgmt-network ~= 19.3.0",
"azure-mgmt-privatedns ~= 1.0.0",
"azure-mgmt-resource ~= 21.0.0",
"azure-mgmt-serialconsole ~= 1.0.0",
"azure-mgmt-storage ~= 20.0.0",
"azure-storage-blob ~= 12.11.0",
"azure-storage-file-share ~= 12.4.0",
"azure-keyvault-secrets ~= 4.7.0",
"azure-keyvault-certificates ~= 4.7.0",
"msrestazure ~= 0.6.4",
"cachetools ~= 5.2.0",
"requests",
"Pillow ~= 9.5.0",
"PyGObject ~= 3.42.0; platform_system == 'Linux'",
]
black = [
"black ~= 23.1.0",
]
docs = [
"Sphinx >= 4.1.0",
"sphinx-argparse >= 0.2.5",
"sphinx-rtd-theme >= 0.5.2",
"sphinxemoji >= 0.1.8",
"sphinx-copybutton >= 0.4.0",
]
flake8 = [
"flake8 ~= 6.0.0",
"Flake8-pyproject",
"flake8-black >= 0.3.2",
"flake8-bugbear ~= 23.2.13",
"flake8-isort >= 4.1.1",
"pep8-naming >= 0.12.1",
]
isort = [
"isort ~= 5.12.0",
]
legacy = [
"pypiwin32; platform_system == 'Windows'",
]
libvirt = [
"libvirt-python ~= 9.3.0; platform_system != 'Windows'",
"pycdlib ~= 1.12.0; platform_system != 'Windows'",
]
mypy = [
"mypy == 0.942",
]
pylint = [
"pylint ~= 2.17.0"
]
test = [
]
typing = [
"types-retry ~= 0.1.3",
"types-paramiko ~= 0.1.7",
"types-requests ~= 2.25.0",
"types-python-dateutil ~= 0.1.4",
"types-PyYAML ~= 5.4.3",
"types-cachetools ~= 5.2.1",
"types-Pillow ~= 8.3.3",
"types-toml",
"boto3-stubs ~= 1.21.37",
"mypy-boto3-ec2",
]
[project.scripts]
lisa = "lisa.main:cli"
[project.urls]
homepage = "https://github.com/microsoft/lisa"
documentation = "https://mslisa.readthedocs.io"
[tool.black]
line-length = 88
target-version = ['py38']
[tool.coverage.run]
branch = true
source = [
"lisa",
"examples",
"microsoft/testsuites",
]
omit = [
"lisa/tests",
]
[tool.coverage.report]
include_namespace_packages = true
precision = 2
skip_empty = true
[tool.flake8]
max-line-length = 88
select = ["B", "BLK", "C90", "E", "F", "I", "W", "N"]
max-complexity = 15
extend-ignore = ["E203", "W503", "N818"]
exclude = [
".git",
".nox",
"__pycache__",
"*.pyi",
"runtime",
".venv",
".vscode",
]
[tool.isort]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
ensure_newline_before_comments = true
line_length = 88
[tool.mypy]
exclude = ".venv/.*"
implicit_reexport = true
mypy_path = "./typings"
strict = true
namespace_packages = true
show_column_numbers = true
explicit_package_bases = true
[tool.setuptools]
packages = ["lisa"]
[tool.setuptools_scm]
version_scheme = "post-release"
local_scheme = "no-local-version"