-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathpyproject.toml
More file actions
83 lines (73 loc) · 2.63 KB
/
pyproject.toml
File metadata and controls
83 lines (73 loc) · 2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
[build-system]
requires = ["poetry-core>=1.0.0", "poetry-dynamic-versioning>=1.0.0,<2.0.0"]
build-backend = "poetry_dynamic_versioning.backend"
[tool.poetry]
name = "understack-workflows"
version = "0.0.0"
authors = ["Understack Developers"]
description = "The glue between different systems and services that are run in our Workflows"
readme = "README.md"
packages = [{include = "understack_workflows"}]
classifiers = [
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Environment :: OpenStack",
"License :: OSI Approved :: Apache Software License",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3.11",
"Topic :: System :: Hardware",
"Topic :: System :: Systems Administration"
]
[tool.poetry.dependencies]
# keep this python field in sync with the tool.ruff.target-version
python = "~3.11.0"
pydantic = "^2"
pynautobot = "^2.2.1"
python-ironicclient = "^5"
sushy = "^5.3.0"
kubernetes = "29.0.0"
understack-flavor-matcher = {path = "../understack-flavor-matcher"}
[tool.peotry.group.test]
optional = true
[tool.poetry.group.test.dependencies]
pytest = "^8.0.0"
pytest-github-actions-annotate-failures = "*"
pytest-cov = "^6.0.0"
pytest-mock = "^3.14.0"
pytest-lazy-fixtures = "^1.1.1"
requests-mock = "^1.12.1"
[tool.poetry.scripts]
sync-keystone = "understack_workflows.main.sync_keystone:main"
sync-provision-state = "understack_workflows.main.sync_provision_state:main"
undersync-switch = "understack_workflows.main.undersync_switch:main"
undersync-device = "understack_workflows.main.undersync_device:main"
enroll-server = "understack_workflows.main.enroll_server:main"
bmc-password = "understack_workflows.main.print_bmc_password:main"
bmc-kube-password = "understack_workflows.main.bmc_display_password:main"
sync-network-segment-range = "understack_workflows.main.sync_ucvni_group_range:main"
disable-autosync = "understack_workflows.main.disable_autosync:main"
[tool.pytest.ini_options]
minversion = "6.0"
addopts = "-ra --cov=understack_workflows"
testpaths = [
"tests",
]
filterwarnings = [
# sushy
"ignore:pkg_resources is deprecated as an API.:DeprecationWarning"
]
[tool.ruff]
# use our default and override anything we need specifically
extend = "../pyproject.toml"
target-version = "py310"
[tool.ruff.lint.per-file-ignores]
"understack_workflows/nautobot_device.py" = ["UP031"]
"tests/test_nautobot_event_parser.py" = ["E501"]
"tests/test_bmc_credentials.py" = ["B017"]
"tests/**/*.py" = [
"S101", # allow 'assert' for pytest
"S105", # allow hardcoded passwords for testing
]
"understack_workflows/main/bmc_display_password.py" = [
"S607", # allow the kubectl call
]