Adding upstream version 0.15.0.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
6721599912
commit
a1777afd4b
103 changed files with 79620 additions and 742 deletions
|
@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|||
|
||||
[project]
|
||||
name = "anta"
|
||||
version = "v0.14.0"
|
||||
version = "v0.15.0"
|
||||
readme = "docs/README.md"
|
||||
authors = [{ name = "Khelil Sator", email = "ksator@arista.com" }]
|
||||
maintainers = [
|
||||
|
@ -17,19 +17,17 @@ maintainers = [
|
|||
description = "Arista Network Test Automation (ANTA) Framework"
|
||||
license = { file = "LICENSE" }
|
||||
dependencies = [
|
||||
"aiocache~=0.12.2",
|
||||
"aio-eapi==0.6.3",
|
||||
"click~=8.1.6",
|
||||
"click-help-colors~=0.9",
|
||||
"cvprac~=1.3.1",
|
||||
"pydantic>=2.6.1,<2.8.0",
|
||||
"pydantic-extra-types>=2.1.0",
|
||||
"eval-type-backport~=0.1.3", # Support newer typing features in older Python versions (required until Python 3.9 support is removed)
|
||||
"PyYAML~=6.0",
|
||||
"requests~=2.31.0",
|
||||
"rich>=13.5.2,<13.8.0",
|
||||
"asyncssh>=2.13.2,<2.15.0",
|
||||
"Jinja2~=3.1.2",
|
||||
"aiocache>=0.12.2",
|
||||
"asyncssh>=2.13.2",
|
||||
"cvprac>=1.3.1",
|
||||
"eval-type-backport>=0.1.3", # Support newer typing features in older Python versions (required until Python 3.9 support is removed)
|
||||
"Jinja2>=3.1.2",
|
||||
"pydantic>=2.7",
|
||||
"pydantic-extra-types>=2.3.0",
|
||||
"PyYAML>=6.0",
|
||||
"requests>=2.31.0",
|
||||
"rich>=13.5.2,<14",
|
||||
"httpx>=0.27.0"
|
||||
]
|
||||
keywords = ["test", "anta", "Arista", "network", "automation", "networking", "devops", "netdevops"]
|
||||
classifiers = [
|
||||
|
@ -53,40 +51,44 @@ classifiers = [
|
|||
requires-python = ">=3.9"
|
||||
|
||||
[project.optional-dependencies]
|
||||
cli = [
|
||||
"click~=8.1.6",
|
||||
"click-help-colors>=0.9",
|
||||
]
|
||||
dev = [
|
||||
"bumpver==2023.1129",
|
||||
"bumpver>=2023.1129",
|
||||
"codespell~=2.2.6",
|
||||
"mypy~=1.9",
|
||||
"mypy-extensions~=1.0",
|
||||
"mypy~=1.10",
|
||||
"pre-commit>=3.3.3",
|
||||
"pylint-pydantic>=0.2.4",
|
||||
"pylint>=2.17.5",
|
||||
"ruff~=0.3.5",
|
||||
"pytest>=7.4.0",
|
||||
"pytest-asyncio>=0.21.1",
|
||||
"pytest-cov>=4.1.0",
|
||||
"pytest-dependency",
|
||||
"pytest-html>=3.2.0",
|
||||
"pytest-metadata>=3.0.0",
|
||||
"pylint-pydantic>=0.2.4",
|
||||
"pytest>=7.4.0",
|
||||
"ruff>=0.3.7,<0.5.0",
|
||||
"tox>=4.10.0,<5.0.0",
|
||||
"types-PyYAML",
|
||||
"types-paramiko",
|
||||
"types-pyOpenSSL",
|
||||
"types-requests",
|
||||
"typing-extensions",
|
||||
"yamllint>=1.32.0",
|
||||
]
|
||||
doc = [
|
||||
"fontawesome_markdown",
|
||||
"mkdocs>=1.3.1",
|
||||
"griffe",
|
||||
"mike==2.1.1",
|
||||
"mkdocs-autorefs>=0.4.1",
|
||||
"mkdocs-bootswatch>=1.1",
|
||||
"mkdocs-git-revision-date-localized-plugin>=1.1.0",
|
||||
"mkdocs-git-revision-date-plugin>=0.3.2",
|
||||
"mkdocs-material>=8.3.9",
|
||||
"mkdocs-material-extensions>=1.0.3",
|
||||
"mkdocs-material>=8.3.9",
|
||||
"mkdocs>=1.3.1",
|
||||
"mkdocstrings[python]>=0.20.0",
|
||||
"mike==2.0.0",
|
||||
"griffe",
|
||||
]
|
||||
|
||||
[project.urls]
|
||||
|
@ -101,14 +103,14 @@ anta = "anta.cli:cli"
|
|||
# Tools
|
||||
################################
|
||||
[tool.setuptools.packages.find]
|
||||
include = ["anta*"]
|
||||
include = ["anta*", "asynceapi*"]
|
||||
namespaces = false
|
||||
|
||||
################################
|
||||
# Version
|
||||
################################
|
||||
[tool.bumpver]
|
||||
current_version = "0.14.0"
|
||||
current_version = "0.15.0"
|
||||
version_pattern = "MAJOR.MINOR.PATCH"
|
||||
commit_message = "bump: Version {old_version} -> {new_version}"
|
||||
commit = true
|
||||
|
@ -131,6 +133,8 @@ plugins = [
|
|||
]
|
||||
# Comment below for better type checking
|
||||
#follow_imports = "skip"
|
||||
# Make it false if we implement stubs using stubgen from mypy for aio-eapi, aiocache and cvprac
|
||||
# and configure mypy_path to generated stubs e.g.: mypy_path = "./out"
|
||||
ignore_missing_imports = true
|
||||
warn_redundant_casts = true
|
||||
# Note: tox find some unused type ignore which are required for pre-commit
|
||||
|
@ -159,15 +163,20 @@ addopts = "-ra -q -vv --cov --cov-report term:skip-covered --color yes"
|
|||
log_level = "WARNING"
|
||||
render_collapsed = true
|
||||
testpaths = ["tests"]
|
||||
filterwarnings = [
|
||||
"error",
|
||||
# cvprac is raising the next warning
|
||||
"default:pkg_resources is deprecated:DeprecationWarning",
|
||||
# Need to investigate the following - only occuring when running the full pytest suite
|
||||
"ignore:Exception ignored in.*:pytest.PytestUnraisableExceptionWarning",
|
||||
|
||||
]
|
||||
|
||||
|
||||
[tool.coverage.run]
|
||||
branch = true
|
||||
source = ["anta"]
|
||||
parallel = true
|
||||
omit= [
|
||||
# omit aioeapi patch
|
||||
"anta/aioeapi.py",
|
||||
]
|
||||
|
||||
[tool.coverage.report]
|
||||
# Regexes for lines to exclude from consideration
|
||||
|
@ -225,7 +234,9 @@ python =
|
|||
|
||||
[testenv]
|
||||
description = Run pytest with {basepython}
|
||||
extras = dev
|
||||
extras =
|
||||
dev
|
||||
cli
|
||||
# posargs allows to run only a specific test using
|
||||
# tox -e <env> -- path/to/my/test::test
|
||||
commands =
|
||||
|
@ -297,7 +308,6 @@ exclude = [
|
|||
"site-packages",
|
||||
"venv",
|
||||
".github",
|
||||
"aioeapi.py" # Remove this when https://github.com/jeremyschulman/aio-eapi/pull/13 is merged
|
||||
]
|
||||
|
||||
line-length = 165
|
||||
|
@ -374,6 +384,9 @@ runtime-evaluated-base-classes = ["pydantic.BaseModel", "anta.models.AntaTest.In
|
|||
"anta/cli/exec/utils.py" = [
|
||||
"SLF001", # TODO: some private members, lets try to fix
|
||||
]
|
||||
"anta/cli/__init__.py" = [
|
||||
"T201", # Allow print statements
|
||||
]
|
||||
"anta/cli/*" = [
|
||||
"PLR0913", # Allow more than 5 input arguments in CLI functions
|
||||
"ANN401", # TODO: Check if we can update the Any type hints in the CLI
|
||||
|
@ -390,16 +403,17 @@ runtime-evaluated-base-classes = ["pydantic.BaseModel", "anta.models.AntaTest.In
|
|||
"ANN401", # Ok to use Any type hint in our custom get functions
|
||||
"PLR0913", # Ok to have more than 5 arguments in our custom get functions
|
||||
]
|
||||
"anta/runner.py" = [
|
||||
"C901", # TODO: main function is too complex, needs a refactor
|
||||
"PERF203", # TODO: try - except within a loop, same sa above needs a refactor
|
||||
]
|
||||
"anta/device.py" = [
|
||||
"PLR0913", # Ok to have more than 5 arguments in the AntaDevice classes
|
||||
]
|
||||
"anta/inventory/__init__.py" = [
|
||||
"PLR0913", # Ok to have more than 5 arguments in the AntaInventory class
|
||||
]
|
||||
"examples/anta_runner.py" = [ # This is an example script and linked in snippets
|
||||
"S108", # Probable insecure usage of temporary file or directory
|
||||
"S105", # Possible hardcoded password
|
||||
"INP001", # Implicit packages
|
||||
]
|
||||
|
||||
################################
|
||||
# Pylint
|
||||
|
@ -433,4 +447,5 @@ extension-pkg-whitelist="pydantic"
|
|||
ignore-paths = [
|
||||
"^tests/units/anta_tests/.*/data.py$",
|
||||
"^tests/units/anta_tests/routing/.*/data.py$",
|
||||
"^docs/scripts/anta_runner.py",
|
||||
]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue