From 82c3e2efc440c3ebcfbc32ad4b3710140b9fba8b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 17:49:27 +0000 Subject: [PATCH 1/5] Initial plan From e9f3a9a6edab23bf0d371ddfedd6f77fd3c45a31 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 17:51:32 +0000 Subject: [PATCH 2/5] Remove unsupported mtu option from slirp4netns network configuration Co-authored-by: teacup-on-rockingchair <315160+teacup-on-rockingchair@users.noreply.github.com> --- tests/ssg_test_suite/test_env.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/ssg_test_suite/test_env.py b/tests/ssg_test_suite/test_env.py index e35ddc4eb57..b7eb26ee055 100644 --- a/tests/ssg_test_suite/test_env.py +++ b/tests/ssg_test_suite/test_env.py @@ -533,7 +533,6 @@ def _new_container_from_image(self, image_name, container_name): "--cap-add=cap_sys_admin", "--cap-add=cap_sys_chroot", # "--privileged", - "--network", "slirp4netns:mtu=1500", "--cap-add=cap_net_admin", "--publish", "{}".format(self.internal_ssh_port), "--detach", image_name, "/usr/sbin/sshd", "-p", "{}".format(self.internal_ssh_port), "-D"] From f78d9e3dc7eb395aa828b3aca8acbabf3eafe0c6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 18:00:01 +0000 Subject: [PATCH 3/5] Fix podman port extraction and remove explicit network mode - Remove --network slirp4netns to use podman's default network backend - Add better error handling in extract_port_map for edge cases - Preserve original exception for better debugging in get_ssh_port - Fixes compatibility across different podman/slirp4netns versions Co-authored-by: teacup-on-rockingchair <315160+teacup-on-rockingchair@users.noreply.github.com> --- tests/ssg_test_suite/test_env.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/tests/ssg_test_suite/test_env.py b/tests/ssg_test_suite/test_env.py index b7eb26ee055..462a604de12 100644 --- a/tests/ssg_test_suite/test_env.py +++ b/tests/ssg_test_suite/test_env.py @@ -361,13 +361,14 @@ def get_ssh_port(self): if self.domain_ip == 'localhost': try: ports = self._get_container_ports(self.current_container) - except Exception: + except Exception as exc: msg = ( "Unable to extract SSH ports from the container. " "This usually means that the container backend reported its configuration " "in an unexpected format." ) - raise RuntimeError(msg) from None + logging.error(f"{msg} Original error: {exc}") + raise RuntimeError(msg) from exc if self.internal_ssh_port in ports: ssh_port = ports[self.internal_ssh_port] @@ -573,11 +574,16 @@ def _get_container_ports(self, container): return self.extract_port_map(json.loads(podman_output)) def extract_port_map(self, podman_network_data): + if not podman_network_data: + raise ValueError("Port data is empty or None") + if 'containerPort' in podman_network_data: container_port = podman_network_data['containerPort'] host_port = podman_network_data['hostPort'] else: container_port_with_protocol, host_data = podman_network_data.popitem() + if not host_data or not isinstance(host_data, list) or len(host_data) == 0: + raise ValueError(f"Invalid port mapping data: {host_data}") container_port = container_port_with_protocol.split("/")[0] host_port = host_data[0]['HostPort'] port_map = {int(container_port): int(host_port)} From 2e246ba4639e8047a1e7fa3989e06618d5b6b92c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 18:01:05 +0000 Subject: [PATCH 4/5] Address code review feedback - Remove redundant logging statement (exception is preserved via raise...from) - Simplify validation logic by removing redundant length check - Keep exception chaining for better debugging Co-authored-by: teacup-on-rockingchair <315160+teacup-on-rockingchair@users.noreply.github.com> --- tests/ssg_test_suite/test_env.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/ssg_test_suite/test_env.py b/tests/ssg_test_suite/test_env.py index 462a604de12..dca30162c10 100644 --- a/tests/ssg_test_suite/test_env.py +++ b/tests/ssg_test_suite/test_env.py @@ -367,7 +367,6 @@ def get_ssh_port(self): "This usually means that the container backend reported its configuration " "in an unexpected format." ) - logging.error(f"{msg} Original error: {exc}") raise RuntimeError(msg) from exc if self.internal_ssh_port in ports: @@ -582,7 +581,7 @@ def extract_port_map(self, podman_network_data): host_port = podman_network_data['hostPort'] else: container_port_with_protocol, host_data = podman_network_data.popitem() - if not host_data or not isinstance(host_data, list) or len(host_data) == 0: + if not host_data or not isinstance(host_data, list): raise ValueError(f"Invalid port mapping data: {host_data}") container_port = container_port_with_protocol.split("/")[0] host_port = host_data[0]['HostPort'] From c8bb633a0df4a2f9e3858210ea3172495d231321 Mon Sep 17 00:00:00 2001 From: Matthew Burket Date: Tue, 24 Feb 2026 10:12:26 -0600 Subject: [PATCH 5/5] Remove trailing whitespace in tests/ssg_test_suite/test_env.py --- tests/ssg_test_suite/test_env.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ssg_test_suite/test_env.py b/tests/ssg_test_suite/test_env.py index dca30162c10..354b3dbcfe4 100644 --- a/tests/ssg_test_suite/test_env.py +++ b/tests/ssg_test_suite/test_env.py @@ -575,7 +575,7 @@ def _get_container_ports(self, container): def extract_port_map(self, podman_network_data): if not podman_network_data: raise ValueError("Port data is empty or None") - + if 'containerPort' in podman_network_data: container_port = podman_network_data['containerPort'] host_port = podman_network_data['hostPort']