Paulo Castro
2ab8ae1c10
v12 preparations: Add feature switch for project directory validation
...
Connects-to: #1770
Change-type: patch
2020-05-29 22:03:55 +01:00
Paulo Castro
1d073af31a
v12 preparations: Add feature switch for '--nogitignore'
...
Connects-to: #1770
Change-type: patch
2020-05-29 01:12:15 +01:00
Scott Lowe
979284b071
Convert tags
, tag set
, tag rm
to oclif.
...
Change-type: patch
Resolves : #1805
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-28 19:49:23 +02:00
Scott Lowe
889c7b08cf
v12 preparations: Add version switch, update login message.
...
Change-type: patch
Connects-to: #1770
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-27 18:29:36 +02:00
Paulo Castro
ba0024645d
balena deploy: Fix "access denied" pushing images to registry
...
Change-type: patch
2020-05-25 17:10:17 +01:00
Pagan Gazzard
a6f905b71c
Fix lazy loading in utils/compose
...
Change-type: patch
2020-05-25 15:35:03 +01:00
Scott Lowe
1c354c800b
Replace windows dns workaround with single lookup
...
Change-type: patch
Connects-to: #1518
Resolves : #1727
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-22 12:14:58 +00:00
Paulo Castro
8522363cd3
Convert selected functions to Typescript and async/await (compose.js)
...
Connects-to: #1045
Change-type: patch
2020-05-22 00:24:46 +01:00
Paulo Castro
480228d8f4
Add tests for 'balena deploy'
...
Connects-to: #1045
Change-type: patch
2020-05-22 00:24:46 +01:00
Cameron Diver
77f3fa4b6c
Fix caching by preserving all file stats when pushing to device or cloud
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-21 12:01:34 +01:00
Pagan Gazzard
744122b1b8
Update typescript to 3.9
...
Change-type: patch
2020-05-18 13:32:15 +01:00
Paulo Castro
4577d72ead
push/build/deploy: add --nogitignore option and update dockerignore filter library
...
Connects-to: #1032
Connects-to: #1148
Change-type: minor
2020-05-13 22:33:37 +01:00
Cameron Diver
4e50d08f7b
Fix usage of livepush v3 features
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-05-12 09:24:05 +01:00
Paulo Castro
8d60cd1f92
Fix 'balena app' (rm, restart, info) with numeric app IDs
...
Resolves : #1815
Change-type: patch
2020-05-11 19:27:49 +01:00
Scott Lowe
98a2c0635d
Improve presentation of errors, help
...
Change-type: patch
Resolves : #1779 #1757
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-06 10:48:50 +02:00
Pagan Gazzard
2f24e591ef
Avoid unnecessary api calls in balena build
and balena deploy
...
Change-type: patch
2020-05-01 15:58:44 +01:00
Scott Lowe
9b1c3c665b
Refactor: move error related functions into error module
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-01 14:41:39 +02:00
Scott Lowe
153cdf4bb0
Refactor: use checkLoggedIn() instead of exitIfNotLoggedIn()
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-05-01 14:40:37 +02:00
Pagan Gazzard
cbcd7694a9
Merge qemu-ts.ts and qemu.ts files
2020-05-01 11:43:45 +01:00
Pagan Gazzard
52bece7f17
Convert qemu.js to typescript
...
Change-type: patch
2020-05-01 11:43:44 +01:00
Pagan Gazzard
0df6368ab9
Enforce lazy loading via tslint import-blacklist
...
Change-type: patch
2020-05-01 09:33:29 +00:00
Pagan Gazzard
73d6d7b264
Convert lib/utils/deploy.coffee to javascript
...
Change-type: patch
2020-04-30 16:11:42 +01:00
Pagan Gazzard
4ae91ef846
Only notify of an update if the new version is actually newer
...
Change-type: patch
2020-04-30 12:55:39 +00:00
Scott Lowe
d398e22c58
Integrate livepush v3 and live directives
...
Change-type: minor
Resolves : #1784
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-30 12:25:17 +00:00
Pagan Gazzard
203ccaf97b
Convert lib/utils/deploy-legacy.coffee to javascript
...
Change-type: patch
2020-04-30 12:50:20 +01:00
Paulo Castro
6d95c5bad5
balena build/deploy: Update QEMU version to support newer balenalib images
...
Change-type: patch
2020-04-30 10:47:51 +01:00
Paulo Castro
74cdd80b51
balena deploy: Fix "TypeError: images.push is not iterable"
...
Change-type: patch
2020-04-29 15:13:51 +01:00
Pagan Gazzard
6ec05e8dcf
Fix unhandled promise rejection when using balena deploy
...
Change-type: patch
2020-04-28 13:22:15 +01:00
Pagan Gazzard
0cfa1a0dfb
Convert lib/actions/device.coffee to javascript
...
Change-type: patch
2020-04-25 14:08:30 +00:00
Pagan Gazzard
560b0abbe7
Convert lib/utils/compose.coffee to javascript
...
Change-type: patch
2020-04-24 16:17:23 +01:00
Pagan Gazzard
23f2242e22
Convert lib/utils/docker-coffee.coffee to javascript
...
Change-type: patch
2020-04-24 15:25:20 +01:00
Pagan Gazzard
9f59b6dde5
Convert lib/utils/qemu.coffee to javascript
...
Change-type: patch
2020-04-24 10:20:15 +01:00
Thodoris Greasidis
3e4f9f9572
device os-update: Refactor to use the overall_progress field
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2020-04-23 16:10:09 +00:00
Pagan Gazzard
9fda165d34
Convert lib/utils/tty to typescript
...
Change-type: patch
2020-04-23 09:42:23 +01:00
Scott Lowe
a2b761ec4b
Convert command scan
to TypeScript, migrate to oclif
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-22 11:13:40 +00:00
Pagan Gazzard
88e4009e88
Update to balena-release
...
Change-type: patch
2020-04-21 17:39:25 +01:00
Scott Lowe
be82bcfa63
convert commands key
, keys
, key add
, key rm
to oclif.
...
Also:
- Display keys with `name` instead of `title`.
- Check for empty key before calling API.
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-20 16:07:39 +02:00
Paulo Castro
655534469a
Review 'instanceof' usage with classes of external packages
...
Change-type: patch
2020-04-18 02:50:00 +01:00
Scott Lowe
320b4864d9
device os-update: allow host OS upgrade with development balenaOS images
...
also:
fix `device os-update` incorrectly showing 0% progress
convert `device os-update` to use async/await
Change-type: minor
Resolves : #1725
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-15 15:07:10 +02:00
Paulo Castro
159cb752d1
Add '-t' option to 'balena ssh' to bypass TTY autodetection (force allocation)
...
Change-type: patch
2020-03-31 14:50:09 +01:00
Paulo Castro
a74f0413df
Handle ssh process exit codes
...
Change-type: patch
2020-03-31 14:27:30 +01:00
Pagan Gazzard
1a71bad8bb
Convert lib/actions/local/common.coffee to javascript
...
Change-type: patch
2020-03-31 11:57:47 +01:00
Paulo Castro
30738d93b0
Fix "the input device is not a TTY" when piping to 'balena ssh' (local device)
...
Change-type: patch
2020-03-30 14:45:16 +01:00
Paulo Castro
be76b8adbd
Fix 'balena ssh' on MSYS Windows shell ("unexpected end of file")
...
Resolves : #1681
Change-type: patch
2020-03-30 14:45:16 +01:00
Pagan Gazzard
b3b22d6399
Use balena-lint for javascript linting and add javascript type-checking
...
Change-type: patch
2020-03-25 12:12:03 +00:00
Scott Lowe
8658104647
Add support for authentication checking to oclif
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-24 10:19:18 +01:00
Pagan Gazzard
809a5fae25
Switch to native number check
...
Change-type: patch
2020-03-13 16:15:07 +00:00
Pagan Gazzard
eccb1bd9ad
Switch to native string check
...
Change-type: patch
2020-03-13 16:13:21 +00:00
Pagan Gazzard
f859d5025a
Switch to native Array.isArray
instead of aliases
...
Change-type: patch
2020-03-13 16:09:43 +00:00
Pagan Gazzard
09a59ab03f
Remove dependency on inquirer-dynamic-list
2020-03-12 18:03:10 +00:00
Pagan Gazzard
3d2e109e7f
Update dependencies
...
Update balena-sdk from 12.26.7 to 12.29.1
Change-type: minor
2020-03-12 18:03:10 +00:00
Paulo Castro
5a80654305
Avoid Sentry reporting of selected common "expected" errors
...
Change-type: patch
2020-03-09 12:51:56 +00:00
Cameron Diver
b83431c2e0
Improve the UX by only printing effective file changes in livepush
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-03-06 15:17:02 +00:00
Paulo Castro
ca8272b477
Fix build --emulated
on Linux ("exec format error")
...
Resolves : #1649
Change-type: patch
2020-03-06 01:51:36 +00:00
Pagan Gazzard
235c13bea9
Switch to object spreading in favor of _.assign
...
Change-type: patch
2020-02-29 22:08:10 +00:00
Pagan Gazzard
98152c0b09
Lazy-load chalk
...
Change-type: patch
2020-02-28 18:34:54 +00:00
Pagan Gazzard
7c62e34455
Simplify lazy-loading of resin-cli-visuals with a shared function
...
This also avoids current unnecessary requiring of resin-cli-visuals
for every command
Change-type: patch
2020-02-28 15:29:07 +00:00
Pagan Gazzard
eac6bb5e5c
Simplify lazy-loading of balena-sdk by utilizing a shared function
...
This also avoids instantiating multiple balena-sdk
Change-type: patch
2020-02-27 17:17:36 +00:00
Paulo Castro
cdfd1d124b
Fix build/deploy commands with QEMU emulation and alternative Dockerfile name
...
Resolves : #1624
Change-type: patch
2020-02-25 16:42:12 -03:00
Cameron Diver
95c93d24da
Update resin-multibuild and add app and release template vars
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2020-02-18 10:21:12 +07:00
Paulo Castro
671dca8287
Add project directory validation for balena push / build / deploy commands
...
Change-type: minor
2020-02-17 15:19:07 +00:00
Paulo Castro
a1c406a479
Add '--cache-from' option to balena build and deploy commands
...
It implements the same feature as the "docker build --cache-from" option.
Resolves : #1616
Change-type: minor
2020-02-13 18:43:15 +00:00
Paulo Castro
88a1e413a3
Fix balena push "Segmentation fault" on Windows (replace 'mmmagic' with 'isBinaryFile')
...
Connects-to: #1611
Change-type: patch
2020-02-13 15:51:45 +00:00
Pagan Gazzard
f9ece2ce7d
Convert lib/actions/auth to typescript
...
Change-type: patch
2020-02-12 14:26:32 +00:00
Paulo Castro
be209f1626
Fix Windows standalone zip installer (missing mmmagic db for CRLF conversion)
...
Change-type: patch
2020-02-07 18:19:10 +00:00
Pagan Gazzard
f4525bc11e
Add debug instructions for powershell
...
Change-type: patch
2020-02-06 18:24:53 +00:00
Paulo Castro
4502f2a203
Avoid loading 'mmmagic' on Linux (fix "could not load any valid magic files")
...
Resolves : #1596
Change-type: patch
2020-02-05 23:59:11 +00:00
Pagan Gazzard
27e1f3f7d7
Remove unnecessary code now that typescript understands process.exit
...
Change-type: patch
2020-02-03 13:06:23 +00:00
Paulo Castro
f9743b269a
Add more tests for push/build/deploy commands (--convert-eol)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-02-02 20:16:57 +00:00
Scott Lowe
58e7880f1d
Add support for auto-conversion of CRLF line endings.
...
Applies to commands:
balena push
balena build
balena deploy --build
Change-type: minor
Resolves : #1273
Signed-off-by: Scott Lowe <scott@balena.io>
2020-01-31 16:27:22 +01:00
Scott Lowe
041823189f
Add support for deferred log messages.
...
eg. so that info can be output at the end of the process.
Change-type: patch
Connects-to: #1273
Signed-off-by: Scott Lowe <scott@balena.io>
2020-01-31 11:26:54 +01:00
Paulo Castro
1e37c97ffb
Fix proxy support and add proxy exclusion feature (Node.js >= 10.16.0 only)
...
See README for more details on proxy configuration and Node.js compatibility.
Resolves : #1579
Resolves : #1335
Connects-to: #1580
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-27 12:11:11 +00:00
Paulo Castro
b978230f9e
Update resin-lint and prettier, and re-prettify
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-20 22:46:32 +00:00
Scott Lowe
95b5ac1c7f
Prevent file ignorer from ignoring Dockerfile (and variants), docker-compose.yml
...
Change-type: patch
Resolves : #1445
Signed-off-by: Scott Lowe <scott@balena.io>
2020-01-20 11:59:04 +01:00
Paulo Castro
95561864a6
Fix 'balena join' when the user is not logged in
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-14 19:34:53 +00:00
Paulo Castro
51adfeaa3b
Fix join and leave commands on Windows (hanging on stdin and argument escaping)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-14 19:34:53 +00:00
Paulo Castro
7c1faa6de0
Add multicontainer (microservices) support for 'balena env rm'
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-12 13:39:26 +00:00
Paulo Castro
38920a1c59
Add multicontainer (microservices) support for 'balena envs'
...
Connects-to: #1153
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-11 17:50:08 +00:00
Scott Lowe
53325b7c05
Introduce workaround that fixes windows dns issue on balena push
using .local device names.
...
Improve error handling in deployToDevice so that versionErrors don't mask other errors.
Resolves:#1518
Change-type:patch
Signed-off-by:Scott Lowe <scott@balena.io>
2019-12-06 15:32:08 +01:00
Scott Lowe
cf42dca777
Hide discontinued device types in balena app create
.
...
Add basic tests for `balena app create`
Connects-to: #1485
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2019-11-15 12:01:56 +01:00
Paulo Castro
d94a74dfee
Fix 'os configure --config', and migrate it to oclif + TypeScript
...
Also add more non-interactive configuration options:
--config-network, --config-wifi-*, --config-app-update-poll-interval
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-12 21:09:18 +00:00
Paulo Castro
a25a52c21b
Error handling: add ExpectedError type as alternative to exitWithExpectedError()
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-12 19:36:43 +00:00
Paulo Castro
b69ba0b617
Improve command usage format consistency in 'balena help' output
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-10 00:54:22 +00:00
Cameron Diver
b31e253fa4
Support optional containers when pushing to local target
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-06 10:30:28 +00:00
Cameron Diver
62b7d2fd1a
Use all available on-device images during local push
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-11-04 10:27:35 +00:00
Cameron Diver
55b2b5a467
Fix potentialy undefined build task when livepushing
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-10-28 17:50:02 +00:00
Cameron Diver
8ed4f547e0
Update livepush to support build arguments
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-10-22 13:24:00 +01:00
Thodoris Greasidis
96bc8a829e
Fix missing code formatting
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-10-16 15:47:05 +03:00
Thodoris Greasidis
1b943bdf7d
Support managing tags using release commit hashes
...
The sdk version in the shrinkwrap already
supports setting tags by commit hashes and as a
result this already works in the cli as of v11.9.6.
This PR just adds some docs and some extra
handling when the commit param prefix is all
numeric.
Resolves : #1064
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-10-16 09:12:17 +03:00
Paulo Castro
05cb89725e
Fix privilege elevation (sudo) for 'os initialize', 'join', 'leave'
...
* sudo shell arguments required escaping for 'os initialize'
* sudo was not working for standalone zip packages (incorrect
Node.js path in argv[0])
* Interactive 'join' and 'leave' not working on Windows because
'windosu' does not capture stderr.
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-10-15 21:47:26 +01:00
Cameron Diver
0c5ed7adfb
Support container contracts when pushing to local devices
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-10-14 17:18:56 +01:00
Paulo Castro
e0e76a1aa8
Avoid stack trace and Sentry report if user answers No to confirmation prompts
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-10-10 16:02:41 +01:00
Paulo Castro
7dd33adfd1
Fix 'balena build --emulated' on Windows (including default docker socket)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-10-09 13:10:49 +01:00
Cameron Diver
7a865b2e15
Send all debug output to stderr
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-09-19 13:25:40 +01:00
Paulo Castro
2ff427fb90
Refactor oclif integration and preparser
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-17 17:20:16 +01:00
Thodoris Greasidis
87004621ce
Support balena join
to applications of compatible architectures
...
Resolves : #1431
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-09-16 21:31:07 +03:00
Paulo Castro
6631fb5a69
Mitigate "MaxListenersExceededWarning" by reusing Logger instance
...
The full warning output was:
(node:43572) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 drain listeners added. Use emitter.setMaxListeners() to increase limit
(node:43572) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 error listeners added. Use emitter.setMaxListeners() to increase limit
(node:43572) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added. Use emitter.setMaxListeners() to increase limit
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-12 01:49:40 +01:00
Paulo Castro
f76ca1804a
Update balena-sdk from 11.18.0 to 12.10.0 (pre-req for #1153 and #1304 )
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-11 16:08:30 +01:00
Paulo Castro
d484c957bb
Detect Docker Desktop (Docker for Mac) and warn about architecture emulation
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-11 12:05:07 +01:00
Matthew McGinn
e3435c66df
logging: note that tarring is occurring
...
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>
2019-08-28 20:37:50 +02:00
Paulo Castro
19c3178062
Enable emulated builds on remote devices running a different OS as the CLI
...
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>
2019-08-22 13:37:07 +01:00
Paulo Castro
516fa90a20
Fix SecretRemovalError (balena build) when docker daemon arch != target arch
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-08-21 22:25:18 +01:00
Paulo Castro
cdedc58ec1
Fix failing registry secrets authentication under certain conditions
...
('balena build' and 'balena deploy')
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-08-19 16:41:59 +01:00
Lucian
f1d9c29786
Fix bug where "env rm" fails silently if an additional arg is present
...
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>
2019-08-12 13:47:31 +01:00
Cameron Diver
67a4e88e44
Support headless remote builds
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-08-06 08:45:05 +01:00
Matthew McGinn
d92e076829
chore: fix up small typos, remove gitter link
...
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2019-07-17 20:12:52 +01:00
Paulo Castro
225408c57d
Add "build secrets" and "build variables" support for push/build/deploy
...
to/on/via balena devices
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-07-15 16:23:35 +01:00
Paulo Castro
8cfacc9cbc
Fix truncated logs in local multicontainer image builds (balena build/deploy)
...
Resolves : #1346
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-07-15 16:19:41 +01:00
Paulo Castro
49a7eb30c0
Remove BETA suffix from Windows and macOS installers, and update INSTALL.md
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-07-15 14:08:27 +01:00
Michel Wohlert
9eae9dcee3
Add os.sshKeys to generateBaseConfig
...
Change-type: minor
2019-07-09 14:01:58 +02:00
Paulo Castro
9d5ecb5f9c
Add options to 'balena version' to show Node.js version
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-27 16:22:26 +01:00
Thodoris Greasidis
f095ac169a
patterns: Add debug logs in the getOnlineTargetUuid resolution
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-06-26 13:44:56 +03:00
Cameron Diver
36026d8556
Fix using an image more than once in a balena push
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-20 16:46:29 +01:00
Cameron Diver
3b09c5ac91
Remove the livepush initialisation double printed log
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-20 15:20:19 +01:00
Cameron Diver
c3e5147a19
Fix output of seperation newline during livepush
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-18 11:45:12 +01:00
Cameron Diver
cf9fdbe6e4
If a secrets file is not specified, read it from the data directory
...
Change-type: minor
Closes : #1164
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-18 11:13:09 +01:00
Cameron Diver
ea43130135
livepush: Ignore the .git directory when performing a livepush
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-12 12:41:46 +01:00
Thodoris Greasidis
825213c02a
Add device OS update action
...
Resolves : #788
Depends-on: https://github.com/balena-io/balena-sdk/pull/638
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-06-11 15:27:23 +03:00
Cameron Diver
8b5ebe0645
Pin prettier and add formatting changes
...
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-10 11:07:51 +01:00
Cameron Diver
24e49bf131
Cancel ongoing livepushes when a new change occurs
...
Also fix livepush logging when a new container is created (previously
the logs of the commands would stop working after this has happened)
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-07 15:59:27 +01:00
Paulo Castro
d8c942c77e
Fix "catch-uncommitted" build failure (npm run prettify)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-07 01:30:32 +01:00
Rich Bayliss
5d137f3c20
fix: Add single code path to get full, online-only device UUIDs
...
Both the tunnel and SSH commands require a full UUID for an online
device. A single code path was added to provide this, taking either
an application name or a partial UUID as a search parameter.
In the event of an application name being provided, a device select
form is presented to the user to pick from the online devices at that
time.
Change-type: patch
Signed-off-by: Rich Bayliss <rich@balena.io>
2019-06-06 17:05:08 +01:00
Thodoris Greasidis
051268168a
Add initial typings for resin-cli-form
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-06-06 16:21:35 +03:00
Cameron Diver
6696b1b5f7
Make livepush the default when pushing to a local device
...
Change-type: major
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:36 +01:00
Cameron Diver
b391c96e64
Allow multiple services to be tailed with balena logs and push
...
Also correctly type the input.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:35 +01:00
Cameron Diver
94c9e13106
Fix windows straight-to-container SSH
...
Closes : #1211
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:51:58 +01:00
Cameron Diver
64c2f00d2a
Update balena ssh command to support local devices and multicontainer
...
Change-type: major
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:51:57 +01:00
Paulo Castro
8f8d6b5f08
Sort 'balena help' primary commands in manually specified order
...
Connects-to: #1140
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:51:57 +01:00
Paulo Castro
abf573fa47
Begin the transition to oclif with 'balena env add' (fix dropped leading
...
zero in device UUID).
This commit is fairly chunky because it adds the oclif dependency for
the first time, and refactors the CLI help and docs generation code to
accommodate both Capitano and oclif.
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:51:56 +01:00
Paulo Castro
13e3e5e8ea
Bump min Node.js version to 8.0, ts-node to 8.1 and typescript to 3.4.
...
Refactor typings folder for use with the tsconfig typeRoots option.
Change-type: major
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:51:55 +01:00
Paulo Castro
e145540132
Allow newline characters in build/deploy --buildArg values
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-05-30 15:03:56 +01:00
Matthew McGinn
5202e137d5
compose: remove artificial 20 repo limit
...
This issue has now been fixed server-side
Connects-to: #1070
Change-type: minor
Signed-off-by: Matthew McGinn <matthew@balena.io>
2019-05-27 22:12:58 +08:00
Cameron Diver
106b971410
Add a much faster container replacement for livepush
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-27 13:48:53 +01:00
Cameron Diver
39cf86ed85
Add a containerId request function to the device api module
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-27 13:48:53 +01:00
Cameron Diver
f77156772a
Add the ability to specify an environment variable when pushing to local
...
mode device
Closes : #1255
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-27 13:23:55 +01:00
Cameron Diver
05c3d2a5db
Remove intermediate containers when doing a local push
...
Change-type: patch
Closes : #1236
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-17 17:43:41 +01:00
Cameron Diver
7529a9a2a2
Debounce livepush invocations to collect changes together
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-15 14:01:30 +01:00
Cameron Diver
96c975d17e
Use TCP keepalive probes to detect local log stream closing
...
Change-type: patch
Closes : #1219
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-14 11:39:57 +01:00
Paulo Castro
87401ad569
Replace 'npm' upgrade notifier message with INSTALL.md URL
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-05-04 18:34:08 +01:00
Gergely Imreh
21840d9245
qemu: use v4.0.0-balena
...
Also append the QEMU version to the locally cached copy, so the
CLI can correctly bump version whenever QEMU_VERSION is bumped
in the future.
Change-type: minor
Signed-off-by: Gergely Imreh <gergely@balena.io>
2019-05-03 12:37:36 +01:00
Cameron Diver
a832f47508
Improve livepush UX
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-02 14:06:34 +01:00
Cameron Diver
4557cf626f
Improve logging for detached mode + livepush
...
Change-type: patch
Closes : #1196
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-02 14:06:26 +01:00
Gergely Imreh
f2bd3c0ffb
dependencies: bump etcher-sdk to pull in fixes
...
Change-type: patch
Signed-off-by: Gergely Imreh <gergely@balena.io>
2019-05-02 11:53:50 +01:00
Cameron Diver
9bbfb31bf7
Allow any amount of subdomains when parsing .local addresses
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-05-01 08:50:27 +01:00
Paulo Castro
2ad0b60aeb
Unify the CLI instructions between capitanodoc.ts and README.md, move
...
the installation instructions to INSTALL.md, and update the markdown
generation scripts.
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-29 14:27:32 +01:00
Cameron Diver
57fba32fa2
Add better semantics for detached mode + live for push
...
Now if you pass both --live and --detached, the logs won't be displayed
but livepush will continue to run.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-26 16:50:27 +01:00
Cameron Diver
a6d2950260
Allow filtering of system logs with push and logs commands
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 17:30:18 +01:00
Cameron Diver
56c74af1ff
Add per-service filtering to logs and push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 15:05:05 +01:00
Cameron Diver
97c15208b5
push: Add detached flag to avoid streaming logs after local push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 14:31:30 +01:00
Cameron Diver
d412d39164
Add ability to use balena logs with a local mode device
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 12:48:52 +01:00
Cameron Diver
4676396b5f
logs: Make device logs consistent across the CLI
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 12:25:09 +01:00
Cameron Diver
b97565d2e7
refactor: Create and use validation functions for input
...
This includes IP address, application name and dotlocal url parsing.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 12:11:46 +01:00
Paulo Castro
db25a65753
Add --dockerfile option to the build, deploy and push commands
...
It allows the selection of an alternative Dockerfile in single-
container projects that do not include a docker-compose file.
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-23 15:34:19 +01:00
Cameron Diver
7c71098d86
Update livepush documentation and required versions
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 14:00:05 +01:00
Cameron Diver
490f833a33
Cleanup intermediate containers on exit of livepush
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 14:00:05 +01:00
Cameron Diver
a81c1971f1
livepush: Perform full rebuild on Dockerfile-like file change
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 14:00:05 +01:00
Cameron Diver
76034696e9
Fix lint warnings
...
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 14:00:04 +01:00
Cameron Diver
6a9a9e1fdb
Add livepush ability to balena push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 14:00:04 +01:00
Cameron Diver
cf2ad66955
log: Add livepush logging functions
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 12:14:09 +01:00
Cameron Diver
4cfaf6e666
Add device status endpoint api function
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-23 12:14:05 +01:00
Thodoris Greasidis
1ee51ca9a7
Ensure not marking successful releases as canceled
...
Resolves : #1178
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-04-22 20:09:32 +03:00
Akis Kesoglou
9b52dec725
Fix file ignore rules matching metadata folders breaking qemu builds
...
Change-type: patch
2019-04-12 16:16:56 +03:00
Paulo Castro
30698c62e3
Remove 'quickstart' command and deprecate 'local push'.
...
Change-type: major
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-03 17:34:55 +01:00
Cameron Diver
b9bf00d329
Support nocache flag in push <ip>
...
Change-type: patch
Closes : #1128
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-03-28 13:29:52 +00:00
Paulo Castro
6b21f5aa5a
Allow 'balena push <deviceIpAddress>' when not logged in to balenaCloud.
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-25 17:46:38 +00:00
Paulo Castro
a883948d56
Bump resin-multibuild (2.1.4), docker-progress (3.0.5), resin-lint (3.0.1)
...
The new resin-multibuild and docker-progress versions widen the range
of errors caught by the 'balena push' and 'balena build' commands.
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-18 14:09:06 +00:00
Paulo Castro
5ec9dce507
Retry image push a few times (balena deploy, 'unknown blob')
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-05 15:02:52 +00:00
Paulo Castro
1e81638433
Harden 'remote-build' error handling (balena push)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-05 13:17:37 +00:00
Paulo Castro
de3837f777
Minor doc updates (add DEBUG hint)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-04 19:53:18 +00:00
Paulo Castro
05e80094de
Add registry-secrets help msg for build and deploy commands
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-02-27 21:58:44 +00:00
Paulo Castro
211fb824a1
Extend private registry support to balena build and deploy commands
...
Resolves : #1116
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-02-27 13:16:09 +00:00
Paulo Castro
c1e94e661f
Integrate new resin-multibuild major version (private docker registry
...
authentication support for the docker-compose 'image' instruction).
Resolves : #1114
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-02-27 10:33:25 +00:00
Paulo Castro
0bff122b1c
Fix parsing of not-really-numeric device UUID parameters
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-02-26 10:43:57 +00:00
Rich Bayliss
f72b556d92
tunnel: Refactor to improve log output
...
Improve the log output and error handling in the tunnel
command code.
Signed-off-by: Rich Bayliss <rich@balena.io>
Change-type: patch
2019-02-20 21:42:59 +00:00
Rich Bayliss
aac668dfca
tunnel: Add the tunnel command
...
This allows a user to easily use the tunneling service
to open connections into their balena-managed devices.
Signed-off-by: Rich Bayliss <rich@balena.io>
Change-type: patch
2019-02-15 16:08:00 +00:00
Cameron Diver
af948e76f3
Rename localcommit to localrelease in target state for local mode
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-02-05 16:55:49 +00:00
Pagan Gazzard
77196746b3
Lazy load the sdk as much as possible
...
Change-type: patch
2019-01-13 18:03:06 +00:00
Pagan Gazzard
ce1aff1557
Lazy-load docker-toolbelt
...
Change-type: patch
2019-01-13 13:43:21 +00:00
Pagan Gazzard
3cc632fbbb
Lazy-load etcher-sdk to speed up startup
...
Change-type: patch
2019-01-11 18:29:58 +00:00
Pagan Gazzard
f780d47198
Lazy-load resin-cli-form and resin-cli-visuals to speed up startup
...
Change-type: patch
2019-01-11 18:11:32 +00:00
Alexis Svinartchouk
f9390ceb10
Update lib/actions/local/flash.coffee
...
* switch to typescript
* replace etcher-image-stream with etcher-sdk
Change-type: patch
2019-01-11 17:56:34 +01:00
Matthew McGinn
a42a1a97ba
Request access to previously pushed release via balena deploy
...
This access is used to cross mount the old layers, rather than
reuploading the layers each time.
Connects-to: #1045
Change-type: minor
Signed-off-by: Matthew McGinn <mamcgi@gmail.com>
2019-01-10 08:27:53 -05:00
Paulo Castro
0f302d30ec
Add push --registry-secrets option for private docker registry authentication
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2018-12-18 00:01:15 +00:00
Thodoris Greasidis
952d74207d
Check that the provided device type option is of the same arch
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 15:46:27 +02:00
Thodoris Greasidis
97d6a39677
Add explicit device type option to os configure
& config generate
...
Resolves : #1013
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 12:56:43 +02:00
Alexis Svinartchouk
03a3ef38e1
Fix deploy action on node 6
...
Downgrade @types/node to version 6 as we support node6
Change-type: patch
2018-12-14 11:26:59 +01:00
Cameron Diver
a357405f3a
Make architecture checking more stringent when installing emulators
...
Also change the documentation to an armv7hf.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-12-03 13:10:54 +00:00
Akis Kesoglou
8291c96e69
Make specifying the version during configuration optional
...
`version` used to be optional but it seems we recently had to make it a required parameter. However it really feels redundant when all it’s used for is to determine whether the command should issue a legacy user API key or a provisioning key.
This makes version optional but tries to figure it out by itself by reading os-release from the image's boot partition. This is not foul-proof however, and while it'll work with most recent images it won't work with all and in that case it'll bail out and only then warn the user to specify it via the --version argument.
Change-type: minor
2018-11-16 19:39:43 +02:00
Cameron Diver
b799f3a46d
Fix the architecture string used when downloading qemu versions
...
Closes : #1019
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-12 15:57:04 +00:00
Edward Keeble
b83b7145af
Remove unnecessary parentheses
2018-11-07 20:58:27 +01:00
Edward Keeble
26c4e466bd
Store separate local qemu binaries for aarch64 and arm architectures.
...
Copy the correct binary into the local build context when executing a build.
2018-11-07 17:49:20 +01:00
Edward Keeble
42f752e400
Use existing tar-stream dependency to untar qemu archive rather than adding a new dependency.
2018-11-07 17:49:20 +01:00
Edward Keeble
0b67a40d57
Update qemu to v3, and automatically use the correct architecture (arm/aarch64)
...
When building with emulation mode enabled, this downloads the version of qemu
appropriate to the architecture of the project (either arm or aarch64).
Change-type: minor
2018-11-07 17:49:20 +01:00
Tim Perry
75bc937995
Stop validating device config, now that it's API-generated
...
Change-type: patch
2018-11-06 12:31:05 +01:00
Cameron Diver
0deb59b6e2
Dont ignore balena metadata directories when balena pushing
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-01 13:58:54 +00:00
Tim Perry
c6eca9f895
Rewrite the env commands in TypeScript
2018-10-29 22:29:02 +01:00
Tim Perry
4907fccf48
Rename everything from 'resin' to 'balena'
...
Change-type: major
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
b6266878d4
utils/promote: Use the application slug for filtering & presenting
...
Change-type: minor
Depends-on: https://github.com/resin-io/resin-api/pull/1570
Depends-on: https://github.com/resin-io/resin-sdk/pull/596
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
c2df87bcc6
Code formatting
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Akis Kesoglou
79f33c749b
fix deploy
2018-10-29 22:29:02 +01:00