Adding to my colleague’s last message and questions, I was unable to reproduce the message clipping issue with the following trivial Dockerfile:
RUN /bin/false a very long line that errors so long in fact that it should cause the error message to be clipped that is if only I am able to reproduce the issue as kindly reported earlier today
In the example above, the output of
balena build produces the full error message:
$ balena version -a
balena-cli version "11.21.5"
Node.js version "10.17.0"
$ balena build -a test-rpi ~/balena/other/simple_container/
[Info] Creating default composition with source: /Users/paulo/balena/other/simple_container
[Info] Building for armv7hf/raspberrypi3
[Info] Docker Desktop detected (daemon architecture: "x86_64")
[Info] Docker itself will determine and enable architecture emulation if required,
[Info] without balena-cli intervention and regardless of the --emulated option.
[Build] Built 1 service in 0:01
[Build] main [======> ] 33% Step 1/3: ---> 723ce4685637
[Error] Build failed
The command '/bin/sh -c /bin/false a very long line that errors so long in fact that it should cause the error message to be clipped that is if only I am able to reproduce the issue as kindly reported ealier today' returned a non-zero code: 1
Therefore, to help us reproduce the error and determine why it happens, could you also share your Dockerfile? Or at least the step / line that causes the error.
Regarding the info message “Docker itself will determine and enable architecture emulation if required,” it refers to the fact that Docker Desktop itself (on macOS or Windows) provides architecture emulation (https://docs.docker.com/docker-for-mac/multi-arch/), so the balena CLI does not need to install QEMU on the image being built, as described in the blog post Building ARM containers on any x86 machine.