Files
e3-aws/pyproject.toml
Elsa Ferrara cfe80d57fe Move python-on-whales to optional dependencies
Adding python-on-whales to e3-aws dependencies caused e3-distrib to fail. e3-distrib packages with python-on-whales need to be uploaded on cathod to solve this.

We may not want to add python-on-whales on cathod because it is just used for GNAT IQ.

Moving python-on-whales to optional dependencies resolves the e3-distrib build issue.

ref: https://gitlab.adacore-it.com/it/org/software-supply-chain/production-pipeline/issues/-/issues/192
2025-12-19 17:17:18 +01:00

96 lines
1.8 KiB
TOML

[build-system]
requires = ["setuptools >= 61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "e3-aws"
authors = [{name="AdaCore's IT Team"}]
dynamic = ["version"]
description = "E3 Cloud Formation Extensions"
dependencies = [
"boto3",
"botocore",
"e3-core",
"pyyaml",
"troposphere"
]
[project.scripts]
e3-aws-assume-profile = "e3.aws:assume_profile_main"
e3-aws-assume-role = "e3.aws:assume_role_main"
[project.entry-points."e3.event.handler"]
s3-boto3 = "e3.aws.handler.s3:S3Handler"
[project.optional-dependencies]
test = [
"awscli",
"pytest",
"pytest-html",
"mock",
"requests_mock",
"httpretty",
"flask",
"moto[sts, dynamodb]",
"python-on-whales"
]
check = [
"mypy==1.8.0",
"pytest",
"flask",
"moto[sts, dynamodb]",
"bandit",
"pip-audit",
"types-colorama",
"types-psutil",
"types-python-dateutil",
"types-PyYAML",
"types-requests",
"types-setuptools",
"python-on-whales"
]
[tool.setuptools.dynamic]
version = {file = "VERSION"}
[tool.coverage.report]
exclude_also = [
"if tries < max_tries:"
]
[tool.coverage.run]
branch = false
[tool.coverage.html]
title = "e3 aws coverage report"
[tool.pytest.ini_options]
addopts = "--failed-first --e3"
[tool.mypy]
# Ensure mypy works with namespace in which there is no toplevel
# __init__.py. Explicit_package_bases means that that mypy_path
# will define which directory is the toplevel directory of the
# namespace.
mypy_path = "src"
namespace_packages = true
explicit_package_bases = true
disallow_untyped_calls = true
disallow_incomplete_defs = true
no_implicit_optional = true
warn_redundant_casts = true
warn_unused_configs = true
warn_unreachable = true
[[tool.mypy.overrides]]
module = [
"coverage.*",
"botocore.*",
"boto3.*",
"requests.*",
"troposphere.*",
]
ignore_missing_imports = true