[build-system]
requires = ["setuptools>=65.0.0", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "frostfs-testlib"
version = "2.0.1"
description = "Building blocks and utilities to facilitate development of automated tests for FrostFS system"
readme = "README.md"
authors = [{ name = "Yadro", email = "info@yadro.com" }]
license = { text = "GNU General Public License v3 (GPLv3)" }
classifiers = [
    "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3",
]
keywords = ["frostfs", "test"]
dependencies = [
    "allure-python-commons>=2.13.2",
    "docker>=4.4.0",
    "importlib_metadata>=5.0; python_version < '3.10'",
    "neo-mamba==1.0.0",
    "paramiko>=2.10.3",
    "pexpect>=4.8.0",
    "requests>=2.28.0",
    "docstring_parser>=0.15",
    "testrail-api>=1.12.0",
    "pytest==7.1.2",
    "tenacity==8.0.1",
    "boto3==1.16.33",
    "boto3-stubs[essential]==1.16.33",
]
requires-python = ">=3.10"

[project.optional-dependencies]
dev = ["black", "bumpver", "isort", "pre-commit"]

[project.urls]
Homepage = "https://github.com/TrueCloudLab/frostfs-testlib"

[project.entry-points."frostfs.testlib.reporter"]
allure = "frostfs_testlib.reporter.allure_handler:AllureHandler"

[project.entry-points."frostfs.testlib.hosting"]
docker = "frostfs_testlib.hosting.docker_host:DockerHost"

[tool.isort]
profile = "black"
src_paths = ["src", "tests"]
line_length = 100

[tool.black]
line-length = 100
target-version = ["py310"]

[tool.bumpver]
current_version = "2.0.1"
version_pattern = "MAJOR.MINOR.PATCH"
commit_message  = "Bump version {old_version} -> {new_version}"
commit          = true
tag             = false
push            = false

[tool.bumpver.file_patterns]
"pyproject.toml" = ['current_version = "{version}"', 'version = "{version}"']
"src/frostfs_testlib/__init__.py" = ["{version}"]