diff --git a/apps/api/src/api/tool_instances.py b/apps/api/src/api/tool_instances.py index bf661f9..18dd13c 100644 --- a/apps/api/src/api/tool_instances.py +++ b/apps/api/src/api/tool_instances.py @@ -1071,6 +1071,11 @@ async def _prepare_manifest_instance( dockerfile = compile_dockerfile(manifest) entrypoint = compile_entrypoint(manifest) + logger.info("Compiled Dockerfile for instance %s (%d chars)", instance.id, len(dockerfile)) + logger.debug("Dockerfile content: %s", dockerfile) + logger.info("Compiled entrypoint for instance %s", instance.id) + logger.debug("Entrypoint content: %s", entrypoint) + build_ctx = { "Dockerfile": dockerfile, ".headquarter/entrypoint.sh": entrypoint, diff --git a/apps/api/src/services/docker_build.py b/apps/api/src/services/docker_build.py index b556f81..0dad9a9 100644 --- a/apps/api/src/services/docker_build.py +++ b/apps/api/src/services/docker_build.py @@ -22,8 +22,9 @@ def build_image(instance_dir: str, dockerfile: str, tag: str, build_context: dic # Write Dockerfile dockerfile_path = Path(instance_dir) / "Dockerfile" - dockerfile_path.write_text(dockerfile) - logger.debug("Wrote Dockerfile to %s", dockerfile_path) + dockerfile_path.write_text(dockerfile, newline="\n") + logger.info("Wrote Dockerfile to %s (%d bytes)", dockerfile_path, len(dockerfile)) + logger.debug("Dockerfile content:\n%s", dockerfile) # Write build context files if build_context: @@ -37,7 +38,7 @@ def build_image(instance_dir: str, dockerfile: str, tag: str, build_context: dic raise ValueError(f"Build context file path '{file_path}' escapes instance directory") full_path.parent.mkdir(parents=True, exist_ok=True) - full_path.write_text(content) + full_path.write_text(content, newline="\n") logger.debug("Wrote build context file: %s", full_path) # Build image