As noted in #1411, this tarring can be particularly expensive so cluing
in the user may help alleviate pain
Connects-to: #1411
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
E.g. "balena build -e -h <IP> -p 2375" with the CLI running on a Mac laptop,
using balenaEngine on an Intel NUC device, building an image for the RPi (ARM
image arch). Previously, QEMU setup by the CLI assumed that docker ran on the
same OS as the CLI (Docker for Mac has built-in binfmt_misc support and does
not require additional setup, but balenaEngine on Linux requires explicit QEMU
setup.)
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
This also modifies the core CLI to be fed command programatically, which
is useful for being able to do thing like mock endpoints with tools like
"nock", and provide an easier debugging experience.
The tests utilise a "runCommand" helper that intercepts and captures
stdout/stderr writes and returns them once the command has finished
running. At this point the test implementation can parse the
stdout/stderr logs and assess nock interceptions to determine if the
command ran correctly.
This change also homogenises debug messages to start with `[debug]`,
however this is not strictly enforced by linting rules.
Change-type: minor
Signed-off-by: Lucian <lucian.buzzo@gmail.com>
Fixes#1380
Argument parsing of "env rm" command was improved by migrating it to oclif
Change-type: patch
Signed-off-by: Lucian <lucian.buzzo@gmail.com>
The error appears to happen when symlinking typing files and manifests
on case sensitive file systems (like windows) with the error:
```
lib/actions-oclif/env/add.ts(73,16): error TS2742: The inferred type of 'flags' cannot be named without a reference to '../../../../../../../../../volumes/live/c64feead-f78e-4bd4-742d-ccd29aef53c4/volume/node_modules/@oclif/parser/lib/flags'. This is likely not portable. A type annotation is necessary.
lib/actions-oclif/version.ts(42,16): error TS2742: The inferred type of 'flags' cannot be named without a reference to '../../../../../../../../volumes/live/c64feead-f78e-4bd4-742d-ccd29aef53c4/volume/node_modules/@oclif/parser/lib/flags.js'. This is likely not portable. A type annotation is necessary.
```
This appears to be reported on the Typescript repo here https://github.com/microsoft/TypeScript/issues/29221
The suggested workaround is to explicitly set the type of the `flags` static
property.
Change-type: patch
Signed-off-by: Lucian <lucian.buzzo@gmail.com>