Fix setuptools package discovery error during cloud provider dependency installation

The issue occurred when uv tried to install optional dependencies (e.g., [digitalocean])
because setuptools was auto-discovering directories like 'roles', 'library', etc. as
Python packages. Since Algo is an Ansible project, not a Python package, this caused
builds to fail.

Added explicit build-system configuration to pyproject.toml with py-modules = [] to
disable package discovery entirely.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Dan Guido 2025-08-06 17:46:39 -07:00
parent a87a021d5b
commit e62b2ea55b
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,7 @@
[build-system]
requires = ["setuptools>=68.0.0"]
build-backend = "setuptools.build_meta"
[project]
name = "algo"
description = "Set up a personal IPSEC VPN in the cloud"
@ -12,6 +16,10 @@ dependencies = [
"segno>=1.6.0",
]
[tool.setuptools]
# Explicitly disable package discovery since Algo is not a Python package
py-modules = []
[project.optional-dependencies]
# Cloud provider dependencies (installed automatically based on provider selection)
aws = [

2
uv.lock generated
View file

@ -20,7 +20,7 @@ wheels = [
[[package]]
name = "algo"
version = "2.0.0b0"
source = { virtual = "." }
source = { editable = "." }
dependencies = [
{ name = "ansible" },
{ name = "jinja2" },