diff --git a/internal/tty/container.go b/internal/tty/container.go index e1f6f316..bab8812b 100644 --- a/internal/tty/container.go +++ b/internal/tty/container.go @@ -3,12 +3,19 @@ package tty import ( "os" "strings" + + "github.com/githubnext/gh-aw-mcpg/internal/logger" ) +var log = logger.New("tty:container") + // IsRunningInContainer detects if the current process is running inside a container func IsRunningInContainer() bool { + log.Print("Detecting container environment") + // Method 1: Check for /.dockerenv file (Docker-specific) if _, err := os.Stat("/.dockerenv"); err == nil { + log.Print("Container detected: /.dockerenv file exists") return true } @@ -20,14 +27,17 @@ func IsRunningInContainer() bool { strings.Contains(content, "containerd") || strings.Contains(content, "kubepods") || strings.Contains(content, "lxc") { + log.Printf("Container detected: found container indicator in /proc/1/cgroup") return true } } // Method 3: Check environment variable (set by Dockerfile) if os.Getenv("RUNNING_IN_CONTAINER") == "true" { + log.Print("Container detected: RUNNING_IN_CONTAINER=true") return true } + log.Print("No container environment detected") return false }