Temp fix for docker file and debug log (#10345)

This commit is contained in:
Insop
2025-08-15 08:34:46 -07:00
committed by GitHub
parent a6a4246e30
commit 06d283dfa0
2 changed files with 16 additions and 16 deletions

View File

@@ -37,7 +37,7 @@ class DockerRuntimeBuilder(RuntimeBuilder):
@staticmethod
def check_buildx(is_podman: bool = False) -> bool:
"""Check if Docker Buildx is available"""
"""Check if Docker Buildx is available."""
try:
result = subprocess.run(
['docker' if not is_podman else 'podman', 'buildx', 'version'],
@@ -176,29 +176,32 @@ class DockerRuntimeBuilder(RuntimeBuilder):
bufsize=1,
)
output_lines = []
if process.stdout:
for line in iter(process.stdout.readline, ''):
line = line.strip()
if line:
output_lines.append(line) # Store all output lines
self._output_logs(line)
return_code = process.wait()
if return_code != 0:
# Use the collected output for error reporting
output_str = '\n'.join(output_lines)
raise subprocess.CalledProcessError(
return_code,
process.args,
output=process.stdout.read() if process.stdout else None,
stderr=process.stderr.read() if process.stderr else None,
output=output_str, # Use the collected output
stderr=None,
)
except subprocess.CalledProcessError as e:
logger.error(f'Image build failed:\n{e}') # TODO: {e} is empty
logger.error(f'Command output:\n{e.output}')
if self.rolling_logger.is_enabled():
logger.error(
'Docker build output:\n' + self.rolling_logger.all_lines
) # Show the error
logger.error(f'Image build failed with exit code {e.returncode}')
if e.output:
logger.error(f'Command output:\n{e.output}')
elif self.rolling_logger.is_enabled() and self.rolling_logger.all_lines:
logger.error(f'Docker build output:\n{self.rolling_logger.all_lines}')
raise
except subprocess.TimeoutExpired: