container: Sanitize project directory name for Docker container names

Docker container names only allow [a-zA-Z0-9][a-zA-Z0-9_.-], so
directories containing spaces or other characters caused container
creation to fail.
This commit is contained in:
Jeena 2026-05-10 00:14:10 +00:00
parent eef9a66d2d
commit 7507534cf0

View file

@ -3,6 +3,7 @@
import hashlib import hashlib
import logging import logging
import os import os
import re
import shlex import shlex
import signal import signal
import subprocess import subprocess
@ -37,8 +38,9 @@ class AgentContainer:
self.host_uid = os.getuid() self.host_uid = os.getuid()
self.host_gid = os.getgid() self.host_gid = os.getgid()
safe_name = re.sub(r"[^a-zA-Z0-9_.-]+", "_", self.project_path.name).strip("_.-")
self.container_name = ( self.container_name = (
f"{self.CONTAINER_PREFIX}{self.project_path.name}-{self.project_id}" f"{self.CONTAINER_PREFIX}{safe_name}-{self.project_id}"
) )
self.docker_context_dir = Path(__file__).resolve().parent self.docker_context_dir = Path(__file__).resolve().parent