Commit Graph

1751 Commits

Author SHA1 Message Date
Paulo Castro
e4870916e2 config read: Add '--json' option for JSON output
Change-type: minor
2021-11-24 23:03:37 +00:00
Paulo Castro
952d782e90 Delete 'doc/automated-init.md' and improve 'balena help device init'
Change-type: patch
2021-11-24 18:24:14 +00:00
Paulo Castro
f46452f6de os download: Display OS version actually downloaded (range or 'recommended')
Change-type: patch
2021-11-20 00:43:15 +00:00
Paulo Castro
c166ec7597 os versions, os download: Add support for balenaOS ESR versions
Change-type: minor
2021-11-20 00:43:15 +00:00
Paulo Castro
23b07f8a41 deploy: Ensure the release fails if an image's digest (hash) is missing
Change-type: patch
2021-11-16 11:55:07 +00:00
dfunckt
8e712ac910 Add support for YAML anchors and aliases in 'docker-compose.yml'
This allows project files to define services from generic fragments by leveraging YAML's anchors and aliases. See here for an example: 43f6537b2c/spec.md (fragments)

Removing the FAILSAFE_SCHEMA flag is not expected to break existing project files, since the default behaviour is more liberal, or cause problems down the road given we perform validation immediately after. Docs for the flag: https://github.com/nodeca/js-yaml#load-string---options-

Change-type: minor
2021-10-22 16:42:29 +03:00
Carlo Miguel F. Cruz
c493c33e38
Error message when renaming a fleet now mentions the target name.
Change-type: patch
Signed-off-by: Carlo Miguel F. Cruz <carloc@balena.io>
2021-10-05 17:01:07 +08:00
Paulo Castro
08dfc945f3 Update dependencies (@sentry/node error reporting)
Change-type: patch
2021-09-30 01:12:17 +01:00
Paulo Castro
8791c2f4e1 Replace mixpanel dependency with simple GET request
Change-type: patch
2021-09-30 01:12:17 +01:00
Paulo Castro
be306e6a20 Avoid NockMock warnings during standalone executable testing
Change-type: patch
2021-09-30 01:12:17 +01:00
Paulo Castro
6cfff72c59 Fix help output for 'release finalize' command
Change-type: patch
2021-09-30 01:12:17 +01:00
Paul Jonathan Zoulin
a18e182ae4 Add support for releases
Signed-off-by: Paul Jonathan <pj@balena.io>
Change-type: minor
2021-09-28 14:28:43 +00:00
Paulo Castro
8bb211e441 build, deploy: Improve logging of image build messages
Change-type: patch
2021-09-23 16:37:45 +00:00
toochevere
ffccbfba12 build, deploy: Add support for multiarch base images
Bump version of balena-multibuild to the one that supports multiarch
Remove previous hack to avoid sending platform information to multibuild

Change-type: minor
Signed-off-by: Paul Jonathan <pj@balena.io>
See: https://github.com/balena-io/balena-cli/issues/1508
2021-09-23 16:37:45 +00:00
Kyle Harding
7f6738c73c
os download: Avoid incomplete os downloads appearing as successful
By forcing the zlib flush mode to Z_NO_FLUSH we are more likely to
see an error on image download pipelines vs silent failure and
incomplete files.

This is part of a larger investigation and may be removed in the
future when the root cause of the pipeline failures are identified.

Change-type: patch
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-09-20 13:28:14 -04:00
Paulo Castro
09a4e8db2d config inject: Remove requirement of being logged in
Change-type: patch
2021-09-16 12:15:53 +01:00
Kyle Harding
b701151769 build/deploy: Update QEMU to 6.0.0 for emulated builds
Change-type: patch
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-09-10 13:32:12 +00:00
Paulo Castro
305c9045f0 build, deploy: Fix processing of '--tag' option
Change-type: patch
Resolves: #825
Resolves: #1018
2021-09-10 23:11:20 +01:00
Paulo Castro
b30075a18b push: Await and retry supervisor API requests to a local device
Change-type: patch
2021-09-10 01:44:26 +01:00
Paulo Castro
6244af3464 chore: Update net-keepalive dependency (fix CLI packaging errors)
Change-type: patch
2021-09-10 00:20:26 +01:00
Paulo Castro
d6faf060e6 v13 preparations: Add feature switch for removal of '--gitignore' (push, build)
Change-type: patch
2021-09-08 18:10:22 +01:00
Thodoris Greasidis
0327ed766d device move: Improve types & reduce the number of API requests
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-09-07 11:43:35 +00:00
Thodoris Greasidis
9c821511b1 device move: Rely on the device type model to get the compatible apps
Connects-to: #2318
Change-type: patch
See: https://www.flowdock.com/app/rulemotion/i-cli/threads/s6x4Z_LoH8IG4PC_YeXMC0TP6v-
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-09-07 07:53:02 +00:00
Thodoris Greasidis
6bb8df30dd preload: Rely on the device type model to get the compatible apps
Connects-to: #2318
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-09-07 14:53:17 +03:00
Thodoris Greasidis
d793335287 preload: Replace my_application query with the SDKs application.getAll()
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-09-07 02:09:39 +03:00
Thodoris Greasidis
d34073f695 os download: Use the hostApps instead of the device-types/v1 endpoint
Connects-to: #2318
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-08-30 22:32:11 +00:00
Thodoris Greasidis
24fe6666e4 balena deploy: Retrieve the cpu arch as part of the device type resource
Connects-to: #2318
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2021-08-30 22:30:16 +00:00
Paulo Castro
deb3e4c4ac Improve error handling (remove most occurrences of process.exit())
Finally delete the deprecated exitWithExpectedError() function from
'lib/errors.ts'.

Change-type: patch
2021-08-27 00:53:21 +01:00
Paulo Castro
a8ff21af69 build, deploy: Extend CTRL-C coverage on Windows (PowerShell, cmd.exe)
Before this commit, `balena build` and `balena deploy` would almost
never respect CTRL-C on Windows (PowerShell, cmd.exe). Now CTRL-C
is respected over a large extent of runtime and, if CTRL-C is hit
while images are being uploaded (`balena deploy`), the release status
is correctly set to 'failed'.

Change-type: patch
2021-08-27 00:53:21 +01:00
Paulo Castro
d0cdc900a2 Add contract contents at release creation time
Change-type: patch
2021-08-26 16:11:23 +01:00
toochevere
9937b91606 Documentation update with debugging notes
Signed-off-by: Paul Jonathan <pj@balena.io>
2021-08-26 00:34:54 +00:00
toochevere
7d568a928b Add balena.yml handling and --draft to balena deploy release creation
This change allows use of a contract and release semver when doing a push,
and is part of the larger feature to use the builder as part of a CI/CD pipeline.

Change-type: minor
Signed-off-by: Paul Jonathan <pj@balena.io>
2021-08-25 17:01:17 +00:00
Paulo Castro
c2d3eee7cc Add deprecation policy checker and --unsupported global flag
Change-type: minor
2021-08-19 23:17:31 +01:00
Felipe Lalanne
254ef1c8cf Add --draft option to balena push
This change will allow to build releases as draft and have them being
set as final at a later stage. This change is part of a larger feature towards
using the builder as part of CI/CD pipelines.

Depends-on: https://github.com/balena-io/balena-builder/pull/868
Change-type: minor
2021-08-15 16:43:01 +00:00
Paulo Castro
c7bbbc4159 push, build: Improve error handling (identify which service failed)
Change-type: patch
2021-08-13 17:11:48 +01:00
Paulo Castro
58704b08d3 envs, env add: Fix "Application is ambiguous" when using device UUID
Change-type: patch
2021-08-11 02:00:35 +01:00
Paulo Castro
64a44e7a5f Rename applications to fleets (stage 1). See: https://git.io/JRuZr
- Add fleet(s) commands and -f, --fleet flags as aliases to the app(s)
  commands and -a, --app, --application flags.
- Conditionally rename column/row headers and JSON object properties
  from 'application' to 'fleet', with some variations.
- Print warning messages regarding the renaming, provided that stderr
  is attached to an interactive terminal.

Change-type: minor
Resolves: #2302
2021-08-09 12:12:03 +01:00
Paulo Castro
8338e2e933 os download: Improve error message for misspelled device type names
Change-type: patch
2021-07-23 15:10:00 +01:00
Paulo Castro
e624726e44 config write: Fix EBUSY error on macOS
Change-type: patch
2021-07-21 23:56:57 +01:00
Paulo Castro
f914fa2d8a chore: Remove 'umount' dependency (as advised by "npm audit")
Address security advisory https://www.npmjs.com/advisories/1512

Change-type: patch
2021-07-21 23:56:57 +01:00
Paulo Castro
3a871a0003 chore: Update balena-lint
Change-type: patch
2021-07-20 18:02:16 +01:00
Pagan Gazzard
f79ccc0c95 Simplify runSpinner api
Change-type: patch
2021-07-20 15:46:54 +01:00
Paulo Castro
cfd790a193 Update 'devDependencies' in package.json
Change-type: patch
2021-07-09 21:34:09 +01:00
Paulo Castro
36f4c1312b config write: Fix parsing of 'key' argument with numeric components
Change-type: patch
2021-07-09 17:29:21 +01:00
Kyle Harding
fec96b41ee
preload: Warn that zip files are only accepted for Intel Edison
Change-type: patch
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-06-24 11:04:26 -04:00
Paulo Castro
a254e46118 devices supported: Use new DeviceType data model as source of truth
Change-type: patch
2021-05-16 22:48:22 +00:00
Paulo Castro
d15b54cf40 Fix fast-boot module caching with read-only installation folders
* Add missing fast-boot `stop()` call on CLI exit to avoid 1s timeout.
* Move `.fast-boot.json` to `~/.balena/cli-module-cache.json` to
address scenarios where the CLI is installed to a read-only folder:
- pkg's internal 'snapshot' filesystem (standalone zip package)
- Root-owned folder without write permission to regular users,
  like `/usr[/local]/lib/balena-cli` (the case of caxa-based
  installers or the GUI installer for macOS).

Change-type: patch
2021-05-27 00:23:36 +00:00
Robert Günzler
e04242db64
doc: Document the image nameing scheme used by deploy
When using deploy to create a release for a multi-container project one
needs to follow this to avoid triggering a build. Relevant for CI/CD scenarios
with their own build pipeline.

Change-type: patch
Signed-off-by: Robert Günzler <robertg@balena.io>
2021-05-24 16:24:26 +02:00
Roland Kajatin
501882fd26 os configure, local configure: Fix "Unsupported filesystem" error
When configuring a BalenaOS image with system connections using the CLI,
the function assumed that the boot partition was always 1. This is not
the case for every supported board. Therefore, a new function is added,
which automatically determines the boot partition number and allows
users to configure the image with system connection settings.

This change affects both the `balena local configure` and `balena os configure` commands.

Change-type: patch
2021-05-16 18:08:26 +02:00
Paulo Castro
2c922ee6d2 Update dependencies (multibuild, dockerode, docker-toolbelt, docker-progress)
Update resin-multibuild from 4.7.2 to 4.11.0

Change-type: patch
2021-05-07 00:32:15 +01:00
Paulo Castro
732fc2d539 build: Workaround issue with Docker v20.10 + single-arch base images
Change-type: patch
2021-05-06 23:20:06 +01:00
Paulo Castro
535a443d7c build: Fix "Total: undefined" image pull progress report
Change-type: patch
2021-05-03 15:48:16 +01:00
Scott Lowe
fa26004648 Add message regarding deprecation of --buildArg option in build/deploy commands
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2021-04-21 07:26:57 +02:00
Tomás Migone
8780a24fb5 ssh: fix incorrect service name parsing in local mode
Resolves: #2252
Change-type: patch
Signed-off-by: Tomás Migone <tomas@balena.io>
2021-04-14 16:31:07 -03:00
Paulo Castro
0f9d78ab50 config inject/read/write: Fix umount errors with OS image files
Resolves: #1003
Change-type: patch
2021-04-13 23:30:19 +01:00
Paulo Castro
06f7683837 Refactor dependency import in utils/helpers.ts for performance
Change-type: patch
2021-04-13 22:14:13 +01:00
Paulo Castro
d50d18d492 push, logs: Fix parsing of local mode device logs (NDJSON stream)
Resolves: #2185
Change-type: patch
2021-04-09 23:58:04 +01:00
Marios Balamatsias
213e54feb1 lib/commands/local/configure: Fix local configure when resin-wifi is not available on the image
Resolves: #2239
Change-type: patch
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2021-04-09 21:20:47 +03:00
Paulo Castro
f53e658ca2 docs: Further clarify Docker requirements for preload
Change-type: patch
2021-04-04 23:02:48 +01:00
Mark Corbin
6437bb7511 os/configure: Fix broken NetworkManager URL
Update the broken NM URL to match the rest of the documentation.

Change-type: patch
Connects-to: balena-io/docs/#1757 balena-io/docs/#1522
Changelog-entry: os/configure: Fix broken NetworkManager URL
Signed-off-by: Mark Corbin <mark@balena.io>
2021-03-31 10:08:37 +00:00
Marios Balamatsias
ac96616e4e osConfigure/localFlash: Add support for Node.js v14
* Replace old resin-image-fs with newer balena-image-fs
* package.json: Remove resin-image-fs package
* package: Install dependencies that work with node14
* Remove resin-image-fs typings
* Fix etcher-sdk related types
* local/flash: Add unmountOnSuccess, write, direct properties on flash
	Taken from https://github.com/balena-io-modules/etcher-sdk/blob/master/examples/multi-destination.ts
* tests/utils/eol-conversion: Remove ext2fs sample binary
	Specifically ext2fs/build/Release/bindings.node
	I removed it because the file doesn't exist
* tests/test-data/pkg: Add new expected warnings darwin/linux/windows
* os/configure: Remove windows check
* local/flash: Check if environment is WSL and show warning message
* Get tests to pass with certain Node v14 warning messages
* INSTALL-WINDOWS: Remove os configure warning

Improve push and logs support for Node.js v14 (bump 'net-keepalive')

Resolves: #2200
Resolves: #1990
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2021-03-31 01:15:47 +03:00
Paulo Castro
37c2880996 push: Fix docker-compose.dev.yml serialization ("should be object,null" error)
Change-type: patch
2021-03-20 22:17:20 +00:00
Chris Wiggins
50af0760ce balena device: Display public IP address field
Change-type: minor
2021-03-19 14:41:21 +13:00
Paulo Castro
bcea5193a1 build, deploy: Fix error handling when QEMU download fails
Change-type: patch
2021-03-06 16:10:33 +00:00
Kyle Harding
c8e4d2c9a6
docs: emphasize that push emulation is not required in most cases
Change-type: patch
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-02-23 08:55:25 -05:00
Scott Lowe
f3d750a024 Add support for docker-compose dev overlay in local pushes
Change-type: minor
Signed-off-by: Scott Lowe <scott@balena.io>
2021-02-09 13:06:03 +01:00
Kyle Harding
15fc805f89
build/deploy: fix emulated builds to use fully static qemu binaries
Avoid possible situations where the local glibc may not support
the required syscalls for arm emulation during build/deploy.

Change-type: patch
Conneted-to: https://github.com/balena-io/qemu/issues/21
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-02-06 09:50:46 -05:00
Scott Lowe
e47fd0c887 Add command device local-mode
Change-type: minor
Resolves: #1304
Signed-off-by: Scott Lowe <scott@balena.io>
2021-02-04 15:36:32 +00:00
Scott Lowe
e6b85c9cf8 Modify push to pass app slug to builder
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2021-02-04 10:41:00 +01:00
Kyle Harding
9636985ee7
build/deploy: Update QEMU to speed up emulated builds
QEMU v5 has quite a few improvements over v4, and the speed
difference when emulating arm is quite noticible.

We tested this with, and without, our single-core limitation
patch and have not been able to reproduce the stability
issues we were seeing in v4 so the patch was removed in
this release.

Change-type: patch
Connects-to: https://github.com/balena-io/balena-io/issues/2340
Signed-off-by: Kyle Harding <kyle@balena.io>
2021-01-29 09:26:34 -05:00
Paulo Castro
941c365259 tunnel: Add note re openBalena version compatibility
Change-type: patch
2021-01-25 17:33:41 +00:00
Matthew McGinn
53926067ca
logging: note that the device supervisor version is operative
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2021-01-22 16:53:15 -05:00
Balena CI
7ae83d9ce5 tls: Use TLS for tunnel connection
Switch to using the exposed tunnelUrl and TLS for making
tunnels to the device, to improve security.

Change-type: patch
Signed-off-by: Rich Bayliss <rich@balena.io>
2021-01-20 21:18:23 +00:00
Scott Lowe
a1cf602f6f Handle 'push' edge case with application access
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2021-01-19 13:38:22 +01:00
Scott Lowe
d3586696b4 Fix handling of thrown strings
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2021-01-15 16:45:01 +01:00
Marios Balamatsias
8d56fe9678 deploy: Add --release-tag flag
Now we can do:
`balena deploy myApp myApp/myImage --release-tag key1 value1`

Refactor and reuse the logic that parses and applies the
release tag options from the push command to the deploy
command.

Resolves: #892
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2021-01-15 00:46:39 +02:00
Matthew McGinn
e71184ed3a docs: americanize the spelling of words in sourced markdown
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2021-01-13 10:12:24 -05:00
Scott Lowe
aeff5997d0 Refactor out command internal scandevices
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2021-01-06 15:00:18 +01:00
Alexis Svinartchouk
9fff9266d4 Add --additional-space flag to preload
Change-type: minor
2020-12-28 17:08:20 +01:00
Scott Lowe
27e2b03702 Update push command for organizations
Change-type: patch
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-23 16:03:52 +01:00
Marios Balamatsias
074fe010bd errors: Make all exclusive flag errors expected
eg Don't report errors if during a push --release-tag
and --detached flags are used.

Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-22 17:10:10 +02:00
Marios Balamatsias
34557e35ee push: Add --release-tag flag
You can have 0 or multiple keys without values,
if you use values then you should have as many
values as you have keys. If you don't want to set
a value for a key set its value to "" (bash, cmd.exe)
or '""' (powershell).

Connects-to: #892
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-22 17:10:10 +02:00
Scott Lowe
584aa745f7 Improve id disambiguation for tag commands
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-18 12:52:18 +01:00
Scott Lowe
9d2884aab7 Update commands ssh, tunnel to support orgs
Change-type: patch
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-17 13:01:53 +01:00
Scott Lowe
c898747468 Update various commands to support organizations
Change-type: minor
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-15 16:06:25 +01:00
Scott Lowe
611f59a0da Add organizations support to app create command
Change-type: minor
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-15 14:58:17 +01:00
josecoelho
439d8391ee Improve error message for issues to access balena settings
Update balena-settings-storage from 6.0.1 to 7.0.0

Resolves: #1667
Change-type: patch
2020-12-15 20:14:54 +13:00
Scott Lowe
fe24280adf Fix preload command support for application IDs
Change-type: patch
Resolves: #2063
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-11 13:54:31 +00:00
Scott Lowe
a11f9ec705 Add orgs command
Change-type: minor
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-11 12:48:44 +01:00
Paulo Castro
055ad834e7 apps: Fix "column.match is not a function" when --verbose is used
Change-type: patch
2020-12-11 00:31:59 +00:00
Scott Lowe
665e0cf9d7 Add organizations support to app rename command
Change-type: minor
Connects-to: #2119
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-10 13:57:42 +01:00
Paulo Castro
07666e953f Livepush: Extend CTRL-C availability (don't ignore CTRL-C during image build)
Change-type: patch
2020-12-09 22:49:47 +00:00
Paulo Castro
54731c2d20 Livepush, logs: Automatically reconnect on 'Connection to device lost'
Change-type: minor
2020-12-09 20:43:14 +00:00
Paulo Castro
d00db5ea8c logs: Fix CTRL-C ignored on Windows (PowerShell, MSYS, Git for Windows)
Change-type: patch
2020-12-09 20:43:14 +00:00
Paulo Castro
5497835728 Livepush: Fix process not exiting on "Connection to device lost"
Resolves: #1828
Change-type: patch
2020-12-09 20:43:14 +00:00
Scott Lowe
fc8b7c71fc Fix app name output in app command
Change-type: patch
Resolves: #2120
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-10 08:32:20 +01:00
Marios Balamatsias
a19132d3bf errors: Add expected errors for device deactivation
Change-type: patch
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-09 14:52:51 +02:00
Scott Lowe
3edf7a038f Remove remaining v12 switches
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-08 11:00:36 +01:00
Scott Lowe
19fab40398 Standardize boolean flag typing
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-12-07 14:36:29 +01:00
Marios Balamatsias
5eaa4cfb9f common-flags: Add default false on yes, force and verbose flags
Change-type: patch
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-07 13:17:51 +02:00
Marios Balamatsias
cb2b90732b device: Add deactivate command
Resolves: #1545
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-07 13:12:50 +02:00
Paulo Castro
aae6aff3e9 devices: Don't truncate device UUID to 7 chars when --json is used
Change-type: patch
2020-12-04 00:45:03 +00:00
Marios Balamatsias
7d5a64f59a scan: Print production devices' info on scan
Resolves: #1713
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2020-12-01 13:31:29 +02:00
Scott Lowe
950d173d27 Add ability to disable analytics for performance testing
Change-type: patch
Connects-to: #1708
Signed-off-by: Scott Lowe <scott@balena.io>
2020-11-26 13:47:48 +01:00
Paulo Castro
2bf59530c4 docs: Add references to the masterclasses in the CLI help and README
Change-type: patch
2020-11-19 18:13:45 +00:00
Paulo Castro
a4fd7d6118 Fix debug message logic (don't suggest --debug if it is already being used)
Change-type: patch
2020-11-19 18:13:45 +00:00
Paulo Castro
65f053dd6e Fix unhandled promise rejection when ~/.balena is not accessible
Resolves: #2096
Change-type: patch
2020-11-19 18:13:45 +00:00
Paulo Castro
2f9212d622 scan: Prevent spinner animation output to stdout when --json is used
Change-type: patch
2020-11-20 00:23:26 +00:00
Paulo Castro
4768f76385 push: Reduce memory usage when filtering files with dockerignore
Change-type: patch
2020-11-19 14:24:54 +00:00
Paulo Castro
d6b3249274 Livepush: Refactor dockerignore filtering and add test cases
Change-type: patch
2020-11-19 14:24:54 +00:00
Josh Bowling
02a5466746 Livepush: Ignore paths set in .dockerignore files
Change-type: minor
Signed-off-by: Josh Bowling <josh@balena.io>
2020-11-19 14:24:44 +00:00
Scott Lowe
1b0c14feab Avoid reporting balenarc parsing errors
Change-type: patch
Connects-to: #1100
Signed-off-by: Scott Lowe <scott@balena.io>
2020-11-11 17:04:26 +01:00
Thomas Manning
7da9a800cc Modify os download help to mention dev images
Change-type: patch
Signed-off-by: Thomas Manning <thomasm@balena.io>
2020-11-09 06:13:06 +00:00
Scott Lowe
46249e319b Improve application-identifier disambiguation
Change-type: patch
Resolves: #2077
Signed-off-by: Scott Lowe <scott@balena.io>
2020-11-06 09:39:36 +01:00
Scott Lowe
1e18096873 Add command app purge
Change-type: minor
Signed-off-by: Scott Lowe <scott@balena.io>
2020-11-05 17:07:06 +01:00
Paulo Castro
6b4c28a026 config generate + openBalena v3: Fix "Cannot read property '__id' of undefined"
Change-type: patch
2020-11-05 13:22:15 +00:00
Paulo Castro
9d177609f5 devices: Fix "TypeError: Cannot read property 'slug' of undefined"
Change-type: patch
2020-10-31 00:29:50 +00:00
Scott Lowe
47fcffe368 Add command device purge
Change-type: minor
Resolves: #1547
Signed-off-by: Scott Lowe <scott@balena.io>
2020-10-29 11:03:37 +01:00
Paulo Castro
7f000ee8c3 ssh: Fix "Found more than one container with a service name <name>"
Change-type: patch
2020-10-28 01:06:54 +00:00
Scott Lowe
c48564e85a Remove need for hardcoded list of command ids
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-10-27 10:36:49 +01:00
Paulo Castro
709f009f9b config generate: Fix "Application is ambiguous" when app slug is used
Connects-to: #1893
Change-type: patch
2020-10-25 16:52:31 +00:00
Paulo Castro
116ab1fbc1 config generate: Fix device type compatibility check
Change-type: patch
2020-10-25 16:40:11 +00:00
Paulo Castro
099d755900 Fix typing (don't assume that 'docker-toolbelt' uses Bluebird promises)
Change-type: patch
2020-10-21 14:25:40 +01:00
Paulo Castro
3199f15662 build/deploy: Fix --buildArg option with docker-compose.yml projects
Resolves: #1053
Change-type: patch
2020-10-21 13:02:47 +01:00
Paulo Castro
4c8dc29946 build/deploy: Fix image size notice at end of build
Change-type: patch
2020-10-21 13:02:47 +01:00
Paulo Castro
2b22fb89f1 Convert more code to Typescript (compose.js)
Change-type: patch
2020-10-21 13:02:47 +01:00
Paulo Castro
478b5dd363 Revert styling of "balena CLI" as "balenaCLI"
Change-type: patch
2020-10-21 00:07:46 +01:00
Paulo Castro
0708608c7e Add help note regarding the version of Node.js printed by balena version -a
Connects-to: #2068
Change-type: patch
2020-10-21 00:07:45 +01:00
Paulo Castro
c245dc70c2 preload: Fix parsing of --add-certificate option, amend help for --app
Connects-to: #2063
Change-type: patch
2020-10-21 00:07:15 +01:00
Scott Lowe
592efd0a2e Treat authorization errors as expected
Change-type: patch
Resolves: #2035
Signed-off-by: Scott Lowe <scott@balena.io>
2020-10-13 10:16:16 +02:00
Paulo Castro
d0e4fa0e59 Refactor initialization code (delete app-oclif.ts and app-common.ts)
Change-type: patch
2020-10-11 00:45:53 +01:00
Paulo Castro
cf376316bc Support BALENARC_NO_SENTRY env var to disable Sentry.io error reporting
Change-type: minor
2020-10-10 00:45:55 +01:00
Matthew McGinn
af70f16a9b
login: sign up at the configured balena instance
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2020-10-07 09:20:50 -04:00
Paulo Castro
8a506bc4c0 scan: Add '--json' option to help with scripting
Change-type: minor
2020-10-06 18:04:43 +01:00
Scott Lowe
eddbdfe0dc Rename actions-oclif/ to commands/
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-10-02 13:42:23 +02:00
Paulo Castro
6133bb2096 push: Fix accidental rename of -e (emulated) option
Accidentally renamed during oclif conversion in CLI v12.9.7.

Change-type: patch
2020-10-01 23:49:14 +00:00
Scott Lowe
0a8b3ce4e4 Add new command support
Change-type: minor
Resolves: #766 #1546
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-25 16:20:45 +02:00
Paulo Castro
889fafcffc deploy: Fix unexpected exit with "Everything is up to date"
Resolves: #2040
Change-type: patch
2020-09-20 00:35:57 +01:00
Paulo Castro
b1897a512d Style "balena CLI" as "balenaCLI" and "balena cloud" as "balenaCloud"
Change-type: patch
2020-09-18 23:27:24 +01:00
Paulo Castro
f98c25eaee Reorganize and simplify installation instructions
Change-type: patch
2020-09-18 14:13:32 +01:00
Scott Lowe
abdaf0043f Add new command device restart
Change-type: minor
Resolves: #1542
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-18 12:39:53 +02:00
Scott Lowe
3706db2436 Add new command app rename
Change-type: minor
Resolves: #1567
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-16 16:38:10 +02:00
Scott Lowe
b180eb7b73 Minor fix to device rm
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 17:34:06 +02:00
Scott Lowe
9805854eab Update registry secrets example URL
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 17:33:57 +02:00
Scott Lowe
00c956394d Improve command suggestions, add topic help
Change-type: minor
Resolves: #2021
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 15:56:45 +02:00
Scott Lowe
f9224b05af Fix numerical id support in device rm
Change-type: patch
Resolves: #2031
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 12:53:02 +02:00
Scott Lowe
ece4d88bfd Fix numerical id support in device move
Change-type: patch
Resolves: #2030
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 12:53:02 +02:00
Scott Lowe
0dd7c33237 Fix required status of param in os versions
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-10 12:53:02 +02:00
Scott Lowe
0ca1faba09 Add ability to specify poll interval in join command
Change-type: minor
Resolves: #1432 #1697 #1670
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-09 14:24:45 +02:00
Scott Lowe
9f8569e33f Improve error handling in internal scandevices
Change-type: patch
Connects-to: #1703
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-09 14:24:45 +02:00
Paulo Castro
93e18bea27 push (local device): Add --pull option to force pulling base images again
Connects-to: #1584
Change-type: minor
2020-09-09 00:16:22 +01:00
Paulo Castro
73f49765ec push: Reformat help output to fit in 80 characters
Connects-to: #1858
Change-type: patch
2020-09-09 00:16:21 +01:00
Scott Lowe
e0c65bdef8 Fix error displaying info for devices without commits
Change-type: patch
Resolves: #2024
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-08 18:57:00 +02:00
Scott Lowe
5e5a2c1c85 Fix usage info for env rename
Change-type: patch
Resolves: #2019
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-08 13:31:41 +02:00
Scott Lowe
504877c232 Fix issue with replaced command checks
Change-type: patch
Resolves: #2022
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-08 13:13:53 +02:00
Scott Lowe
273ea5ce4d Display command suggestions, when command not recognized
Change-type: minor
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-07 14:35:35 +02:00
Scott Lowe
d56fec6e36 Convert help to oclif, remove capitano
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-07 14:13:32 +02:00
Paulo Castro
d1539f405a build, deploy: Add --pull option to force pulling base images again
Resolves: #1584
Change-type: minor
2020-09-04 10:28:36 +01:00
Scott Lowe
ffa8e245ba Modify undervoltage status display in device command
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-04 10:32:40 +02:00
Scott Lowe
88569066b5 Add support for new device metrics to device command
Change-type: minor
Signed-off-by: Scott Lowe <scott@balena.io>
2020-09-03 18:26:53 +02:00
Pagan Gazzard
42c6e1010f Convert oclif actions to async/await
Change-type: patch
2020-08-28 13:43:10 +01:00
Thodoris Greasidis
2e1570149d preload: Improve the typings
Change-type: patch
Depends-on: https://github.com/balena-io/balena-sdk/pull/980
See: https://github.com/balena-io/balena-cli/pull/2007#discussion_r478330624
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2020-08-27 16:44:08 +03:00
Pagan Gazzard
787966a0b6 Update to typescript 4.0
Change-type: patch
2020-08-27 11:50:57 +01:00
Scott Lowe
d21a18f353 Convert command preload to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-08-27 10:19:54 +02:00
Alexis Svinartchouk
99a478ee39 Fix device UUID parsing for 'balena tunnel'
Change-type: patch
2020-08-26 15:10:00 +02:00
Scott Lowe
8cb413c1c9 Convert deploy command to oclif
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-08-22 11:58:10 +02:00
Scott Lowe
358a909214 Shorten env add command summary to prevent wrapping
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-08-21 12:43:12 +02:00
Paulo Castro
af1c4b0d03 build: Fix --buildArg and --cache-from options (broken since v12.9.9)
Change-type: patch
2020-08-14 23:12:12 +01:00
Pagan Gazzard
e021ad9af6 Update balena-sdk to 15.x
Update balena-config-json from 4.0.0 to 4.1.0
Update balena-image-manager from 7.0.1 to 7.0.3
Update balena-preload from 10.2.0 to 10.2.4
Update balena-sdk from 14.8.0 to 15.2.1
Update balena-sync from 11.0.0 to 11.0.2

Change-type: patch
2020-08-11 17:53:33 +01:00
Pagan Gazzard
497c8cd49b Lazy load tar-stream
Change-type: patch
2020-08-10 12:01:55 +01:00
Pagan Gazzard
e1c42405a1 Update balena-sdk to 14.x
Update balena-sdk from 13.6.0 to 14.8.0

Change-type: patch
2020-08-07 21:06:07 +00:00
Paulo Castro
62dfae371c devices: Add '--json' option to help with scripting
Change-type: minor
2020-08-07 15:27:42 +01:00
Pagan Gazzard
6ca7c34e57 Reduce bluebird usage
Change-type: patch
2020-08-05 09:41:15 +01:00
Nick Neisen
bab98df87b
env add: Add ability to add env var to multiple locations in one command
Change-type: minor
2020-08-04 17:40:26 -06:00
Alexis Svinartchouk
505acc19db Dont set the preloader config device type to intel-nuc
Change-type: patch
2020-08-04 20:12:28 +02:00
Paulo Castro
74c6f8a627 os build-config: Fix output file containing 'undefined' word since v12.9.4
Resolves: #1975
Change-type: patch
2020-08-04 17:27:20 +01:00
Thodoris Greasidis
a52a623fdf Update balena-release to v3
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2020-08-04 15:35:29 +00:00
Paulo Castro
cf894d98a5 login: Use any free port number instead of 8989 for web authentication
Change-type: minor
2020-08-03 20:26:10 +01:00
Pagan Gazzard
ddb87f403d Fix performance regressions from #1967
Change-type: patch
2020-08-03 11:04:36 +01:00
Pagan Gazzard
9aacb7ec56 Remove some bluebird usage
Change-type: patch
2020-07-31 10:33:51 +00:00
Nick Neisen
47e9d39c6f
device rm: Add ability to remove multiple devices in one command
Change-type: minor
2020-07-30 10:31:48 -06:00
Scott Lowe
09b8cc495c Convert command build to typescript, oclif, and refactor
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-30 15:53:55 +02:00
Scott Lowe
0f058a4441 Convert command push to oclif
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-29 10:53:17 +00:00
Scott Lowe
56cc70cd50 Convert config commands to typescript, oclif
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-29 12:11:18 +02:00
Paulo Castro
f6529eec26 Adjustments for balena-preload v10 (SDK v14). Improved error reporting.
Change-type: patch
2020-07-28 16:12:11 +00:00
Scott Lowe
3fc25cd745 Convert os build-config to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-28 15:33:28 +00:00
Paulo Castro
7eb398c6ef devices supported: Rename 'BETA' to 'NEW' in verbose output
Change-type: patch
2020-07-27 20:23:51 +00:00
Paulo Castro
9ed3bb2f70 os download: Improve warning message re default balenaOS version
Change-type: patch
2020-07-27 20:23:51 +00:00
Scott Lowe
b7c74598b2 Convert os initialize to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-16 16:06:41 +02:00
Nick
edaf76e329
device move: Add ability to move multiple devices in one command
Change-type: minor
2020-07-15 08:26:31 -06:00
Scott Lowe
5d3625f6ae Remove os download command dependency for device init
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-14 23:42:39 +02:00
Scott Lowe
1c17572db0 Convert os download to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-14 23:42:39 +02:00
Scott Lowe
41635c746b Convert os versions to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-14 17:11:30 +02:00
Scott Lowe
4f831ef443 Convert local configure to oclif, typescript
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-13 13:10:26 +02:00
Nick
d9cf95149a
balena ssh: Improve error message in case of misconfigured SSH keys
Change-type: patch
2020-07-12 19:39:49 -06:00
Scott Lowe
7ebc94c1e5 Convert local flash to oclif
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-07-10 11:55:24 +02:00
Paulo Castro
17a9d71e59 Disable mixpanel.track() calls while running automated tests
Change-type: patch
2020-07-09 19:54:03 +01:00
Thodoris Greasidis
477c48f831 Device: Fix the last_seen field not showing up
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2020-07-09 18:12:13 +00:00
Thodoris Greasidis
fb9943a375 Device: explicitly fetch only the presented fields
Depends on open-balena adding the mac_address &
the overall_status device fields, but the latest cli
version is probably already not working, since some
of its dependencies already use the v14 SDK which
needs the v6 model, that the open-balena-api doesn't
have yet either.

Change-type: minor
See: https://www.flowdock.com/app/rulemotion/i-cli/threads/SaSXFlJEv-dpk9uUngWY225zv2D
See: https://github.com/balena-io/open-balena-api/issues/388
See: https://github.com/balena-io/open-balena-api/issues/338
See: https://github.com/balena-io/balena-sdk/issues/920
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2020-07-09 18:12:13 +00:00
Pagan Gazzard
d6f1328238 Be lazier with imports in oclif actions
Change-type: patch
2020-07-09 15:03:38 +01:00