refactor: split services/docker.py into focused modules (Task 3.3)

- Create services/docker/compose.py — compose file generation and commands
- Create services/docker/container.py — container lifecycle and queries
- Create services/docker/config_staging.py — config folder file writing
- Create services/docker/tunnel.py — Cloudflare tunnel management
- Create services/docker/__init__.py — barrel exports
- Delete services/docker.py (replaced by package)
- All imports in api/tool_instances.py remain functional

Quality gates: Python syntax check (pass), imports verified
Refs: repo-restructure Task 3.3
This commit is contained in:
Developer
2026-06-02 19:51:14 +00:00
parent c527393d2e
commit f6003b75ca
10 changed files with 510 additions and 606 deletions
+44
View File
@@ -0,0 +1,44 @@
"""Docker services for container and tunnel management."""
from .compose import (
ensure_instance_directory,
execute_compose_command,
render_compose_template,
write_compose_file,
write_env_file,
)
from .config_staging import write_config_files, write_config_folder_files
from .container import (
connect_container_to_network,
find_free_port,
get_container_id,
get_container_logs,
get_container_name,
get_container_status,
)
from .tunnel import (
check_tunnel_health,
recreate_tunnel,
start_cloudflared_tunnel,
stop_cloudflared_tunnel,
)
__all__ = [
"render_compose_template",
"ensure_instance_directory",
"write_compose_file",
"write_env_file",
"execute_compose_command",
"write_config_files",
"write_config_folder_files",
"get_container_id",
"get_container_name",
"connect_container_to_network",
"get_container_status",
"get_container_logs",
"find_free_port",
"start_cloudflared_tunnel",
"stop_cloudflared_tunnel",
"recreate_tunnel",
"check_tunnel_health",
]