Scott Lowe
cff9e50a22
improve input validation for key
, key rm
...
Change-type: patch
Resolves : #1728
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-15 17:08:25 +02: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
Scott Lowe
3aa72dde4c
Convert commands join, leave to oclif.
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-09 20:50:42 +02:00
Hugh Brown
a50ca78eef
Minor grammar fix in balena ssh documentation
...
Minor grammar fix in balena ssh documentation
Change-type: patch
Signed-off-by: Hugh Brown <hugh@balena.io>
2020-04-07 10:08:24 -07:00
Scott Lowe
bc3fe29624
Convert internal scandevices
, internal osinit
to typescript & oclif
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-03 16:39:39 +02:00
Paulo Castro
96e28f3d45
Fix project directory validation for 'balena deploy' with pre-built image
...
Change-type: patch
2020-04-02 19:44:27 +01:00
Scott Lowe
9aa6b0bc57
Remove unused code from balena note
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-01 15:07:40 +02:00
Scott Lowe
d2fd1ec80a
Check logged in for balena build
if application specified
...
Correct eroneous -f flag in `balena build` help
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-04-01 12:39:30 +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
Paulo Castro
d6a065a230
Delete unused code (ssh.coffee)
...
Change-type: patch
2020-03-30 14:45:15 +01:00
Scott Lowe
fcad35402a
Convert command note
to oclif
...
Add oclif support for piped input
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-30 14:47:43 +02:00
Scott Lowe
49b00e18ae
Convert command settings
to oclif
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-30 14:47:43 +02:00
Scott Lowe
e5d2661c96
Clarify balena device os-update
help re balenaCloud
...
Change-type: patch
Resolves : #1679
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-26 13:59:12 +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
Pagan Gazzard
47e85da789
Deduplicate balenaUrl
fetching in events
...
Change-type: patch
2020-03-24 17:35:44 +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
Scott Lowe
f24c4a036c
Add support for root
property on oclif commands
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-19 19:50:17 +01:00
Scott Lowe
46b695cf22
Add support for primary/secondary oclif commands
...
Change-type: minor
Signed-off-by: Scott Lowe <scott@balena.io>
2020-03-19 15:45:04 +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
2860535c45
Fix balena local flash
...
Change-type: patch
2020-03-12 21:34:40 +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
Paulo Castro
d2df2c7b60
Fix occasional "CLI prints 'null' and exits" (replace old Raven/Sentry SDK)
...
Resolves : #1523
Connects-to: #1333
Connects-to: #1193
Change-type: patch
2020-03-09 12:51:56 +00:00
Paulo Castro
36d3d1256e
Don't send the full command line to Sentry.io
...
Resolves : #703
Change-type: patch
2020-03-09 12:51:56 +00:00
Paulo Castro
b77cb56cd0
Fix occasionally missed command tracking request (oclif commands)
...
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
Paulo Castro
9470e804c0
Don't ignore BALENARC_NO_PROXY env var if HTTP(S)_PROXY env vars are defined
...
Change-type: patch
2020-03-02 15:11:02 +00:00
Pagan Gazzard
00943463a4
Use types for global-agent and global-tunnel-ng
...
Change-type: patch
2020-03-02 15:10:58 +00:00
Pagan Gazzard
3f6d770233
Remove lodash usage in proxy setup
...
Change-type: patch
2020-03-02 15:05:15 +00:00
Pagan Gazzard
c4a6086e9c
Don't try to setup a proxy agent when there's no proxy configured
...
Change-type: patch
2020-03-02 15:04:52 +00:00
Pagan Gazzard
fe4e1d09d7
Update dependencies
...
Update balena-sdk from 12.21.1 to 12.26.7
Change-type: patch
2020-03-02 11:20:20 +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
48b281d7c6
Make use of capitano's promise support to simplify the code
...
Change-type: patch
2020-02-28 13:27: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
Pagan Gazzard
4abdd71ce7
Update type deps
...
Change-type: patch
2020-02-24 14:15:48 +00: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
a15060e9fc
Refactor 'balena push' error handling
...
Change-type: patch
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
Pagan Gazzard
2b04763ac0
Convert lib/auth/index to typescript
...
Change-type: patch
2020-02-12 13:20:36 +00:00
Pagan Gazzard
93ba5832d8
Convert lib/auth/server to typescript
...
Change-type: patch
2020-02-12 12:10:12 +00:00
Pagan Gazzard
a4b34c109d
Convert lib/actions/keys to typescript
...
Change-type: patch
2020-02-10 22:22:06 +00:00
Pagan Gazzard
f1220c6377
Convert lib/actions/notes to typescript
...
Change-type: patch
2020-02-10 18:31:40 +00:00
Pagan Gazzard
99f84c2f6a
Convert lib/actions/app to typescript
...
Change-type: patch
2020-02-10 15:02:00 +00:00
Pagan Gazzard
4de41ce3e0
Convert lib/auth/utils to typescript
...
Change-type: patch
2020-02-10 13:42:50 +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
3f84045127
Switch from opn to its new name of open
...
Change-type: patch
2020-02-06 19:55:22 +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
Thomas Manning
b3948d538c
Debug mode can now be disabled with DEBUG=0 env var
...
Added assignment to `process.env.DEBUG` if `process.env.DEBUG` is negative string to `lib/app.ts` and `automation/run.ts` entrypoints
Resolves : #1502
Change-type: patch
Signed-off-by: Thomas Manning <thomasm@balena.io>
2020-02-05 11:17:12 +09: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
Pagan Gazzard
77931b314a
Update dependencies
...
Change-type: minor
2020-01-24 23:28:15 +00:00
Rich Bayliss
8f6902f4cb
configure: Allow passing system-connection files to 'os configure' command
...
Allow passing files to `os configure` via `--system-connection` to allow
pre-configuration of network connections, such as cellular/GSM.
Change-type: minor
Connects-to: #957
Connects-to: #1162
Connects-to: #1498
Signed-off-by: Rich Bayliss <rich@balena.io>
2020-01-21 21:05:23 +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
Graham McCulloch
aca794b267
Add Windows-specific hint to 'balena scan' output
...
An extra Windows-specific message is now appended to the 'Could not find any balenaOS devices' message - if the OS is Windows.
Also updated the INSTALL instructions with details of the dependency on Bonjour.
Change-type: patch
Signed-off-by: Graham McCulloch <graham@balena.io>
2020-01-20 07:21:04 +07:00
Thodoris Greasidis
ef4ee54a00
Change the balena app action to present the slug instead of the git_repository
...
The `git_repository` field was replaced in the v5
endpoint with the `slug` field. As a result the CLI atm
never shows the `git_repository` in the printed
visual.
Change-type: patch
2020-01-15 01:53:48 +02: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
95843dd816
Fix 'balena push' hanging on Windows (CTRL-C was required after the unicorn)
...
Resolves : #1182
Resolves : #1554
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-14 16:19:09 +00:00
Paulo Castro
edd755d41c
Add hint about the 'jq' utility in the documentation of the --json option
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-14 16:19:09 +00:00
Matthew McGinn
046743071d
meta: Americanize all spellings
...
Connects-to: https://github.com/balena-io/docs/issues/1300
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2020-01-03 13:42:34 -05:00
Paulo Castro
323c9191b6
Add --verbose and --json options to the 'devices supported' command
...
The command was also converted to oclif.
Resolves : #467
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-27 11:54:27 +00:00
Scott Lowe
33552724a1
Fix issues with devices associated with inaccessible applications.
...
Change-type: patch
Resolves : #1530
Signed-off-by: Scott Lowe <scott@balena.io>
2019-12-13 09:33:59 +01:00
Paulo Castro
7fd436cd91
Add multicontainer (microservices) support for 'balena env rename'
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-12 13:39:26 +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
90e184ea1f
Add multicontainer (microservices) support for 'balena env add'
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-11 17:50:08 +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
Paulo Castro
df58ac7673
Add balena envs '-j' option to produce JSON output
...
Change-type: minor
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-06 15:51:09 +00:00
Paulo Castro
630d53311a
Add logged-in check for balena 'env' commands
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-12-06 15:51:09 +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
Paulo Castro
02dcff5b67
Fix 'balena help join' docs re moving devices between apps on the same server
...
Resolves : #1429
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-21 15:31:45 +00: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
Scott Lowe
afd97bd304
Hide discontinued device types in balena devices supported
.
...
Add tests for action.
Convert action to TypeScript.
Connects-to: #1485
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2019-11-15 12:01:55 +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
Paulo Castro
74a521a271
Set the process exit code to 1 (instead of 0) for unknown commands
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-10 00:54:22 +00:00
Paulo Castro
6376ac28d5
Fix logged-in check in "logs" and "ssh" commands (async/await usage)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-10 00:54:22 +00:00
Paulo Castro
2222a90884
Enable debug-mode "long stack traces" for Bluebird promises (async code)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-10 00:54:22 +00:00
Paulo Castro
636ecaf4e0
Improve help and docs (CLI install dependencies) for the preload command
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-11-09 14:04:50 +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
Scott Lowe
4a967b126b
Fix warnings when executing CLI without arguments.
...
Change-type: patch
Signed-off-by: Scott Lowe <scott@balena.io>
2019-11-01 16:21:36 +01: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
02b888f7c1
Fix privilege elevation for standalone zip package on Windows (windosu)
...
* Add pkgExec internal command
* Patch windosu to be aware of process.pkg and use pkgExec
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-10-15 21:47:26 +01:00
Paulo Castro
69c97fed09
Remove 'internal sudo' command
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-10-15 21:47:26 +01: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
d9b417e9e5
Sort the output of balena devices supported
alphabetically by slug
...
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
Thodoris Greasidis
d463a2f0e5
Allow deleting config vars with 'env rm'
...
Resolves : #1459
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-10-03 13:51:33 +03: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
Roman Mazur
c1ba73a2da
Use balena analytics project name
...
It's needed to properly integrate CLI with balena
analytics proxy service.
Change-type: patch
Signed-off-by: Roman Mazur <roman@balena.io>
2019-09-18 18:00:35 +03:00
Paulo Castro
c07b28e694
Migrate 'envs' and 'env rename' commands to oclif
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-18 12:54:31 +01:00
Paulo Castro
b3bef9e556
Simplify/refactor 'env add' and 'env rm' implementation
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-17 17:20:16 +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
Thodoris Greasidis
a64b36fdb9
Support moving devices to applications of a compatible architecture
...
Connects-to: #1433
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-09-16 19:16:51 +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
Paulo Castro
d54a709e7c
Fix mismatched Node.js version errors in standalone package on Windows
...
Resolves : #1419
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-11 01:17:26 +01:00
Paulo Castro
fb1dce9dbb
Add missing oclif-based commands to mixpanel tracking
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-09-01 23:42:21 +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
Matthew McGinn
731db63e78
balena-ssh: add info about remote vs local connections
...
small formatting fixups
Closes: https://github.com/balena-io/docs/issues/974
Change-type: patch
Signed-off-by: Matthew McGinn <matthew@balena.io>
2019-08-19 16:14:26 +02:00
Lucian
730c09989d
Fix incorrect arguments passed to oclif bootstrap function
...
Adds tests for existing oclif commands to avoid regressions
Change-type: patch
Signed-off-by: Lucian <lucian.buzzo@gmail.com>
2019-08-15 18:26:42 +01:00
Lucian
4d389bb6cc
Implement full command testing, beginning with "balena version"
...
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>
2019-08-12 14:50:41 +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
Lucian
34f4c1f6cc
Exit with a warning if "env rm" id value is not an integer
...
Change-type: patch
Signed-off-by: Lucian <lucian.buzzo@gmail.com>
2019-08-09 15:12:30 +01:00
Lucian
05d58d8248
Fix CI instability when building Typescript
...
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>
2019-08-09 12:01:46 +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
Paulo Castro
3ea905dc68
Update mixpanel tracking
...
Change-type: patch
2019-07-22 13:42:44 +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
Thodoris Greasidis
f0030a1891
tunnel: Fix incorrect parsing of numeric short UUIDs
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-06-26 13:44:56 +03:00
Thodoris Greasidis
1d3af3245a
ssh: Fix incorrect parsing of numeric short UUIDs
...
Resolves : #1302
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
Paulo Castro
3387f8f656
Fix 'npm help' SyntaxError on Node 8 (invalid 's' regex flag)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-05 16:12:16 +01:00
Paulo Castro
0bbe376e41
Remove 'signup' command
...
Change-type: major
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 17:06:46 +01:00
Paulo Castro
751749325f
Add warning notices for replaced 'local' commands in v11
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:52:37 +01:00
Paulo Castro
1e2e48b149
Revert 'balena flash' to 'balena local flash'
...
Change-type: major
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:52:37 +01:00
Cameron Diver
01b454351b
Fix SSH'ing into a device from application
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:36 +01: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
5da307f02e
Make the CommandDefinition option parameter a Partial
...
This ensures that no code accidentally relies on them being present, and
the types are then correct.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:35 +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
0ee73f5164
Don't require a login for commands operating on local devices
...
Change-type: patch
Closes : #1195
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:35 +01:00
Cameron Diver
1a1861bfcb
Remove or move most local namespaced commands
...
Change-type: major
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-06-04 13:52:34 +01:00
Paulo Castro
c204dbd6cd
Bump denymount version and delete redundant patch (chore task)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:51:59 +01:00
Paulo Castro
6e7f51758e
Add CONTRIBUTING.md and some guidance on commit messages and doc files.
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-06-04 13:51:59 +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
Alexis Svinartchouk
c49a1d3fbf
Remove --dockerPort's -p alias for balena preload
...
It was conflicting with --pin-device-to-release -p alias
Changelog-entry: Remove --dockerPort's -p alias for `balena preload`
Change-type: major
2019-06-04 13:51:56 +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
Alexis Svinartchouk
f3ef7f6e18
Add preload --add-certificate option
...
Change-type: minor
2019-05-28 16:35:29 +02: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
Alexis Svinartchouk
9434570c2d
Improve preload's --commit parameter description
...
Change-type: patch
2019-05-22 17:29:08 +02:00
Alexis Svinartchouk
674c0ca7b8
Fix balena preload --commit current
alias
...
Change-type: patch
2019-05-22 17:13:55 +02:00
Alexis Svinartchouk
2091768c84
Rename preload --commit latest
to preload --commit current
...
`latest` is still supported
Change-type: patch
2019-05-21 18:00:01 +02:00
Paulo Castro
d47fe0609f
Fix TypeError when running 'balena apps'
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-05-20 17:21:01 +01:00
Thodoris Greasidis
cb14928866
apps: Fix the device count columns being empty
...
Connects-to: #1238
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-05-17 20:48:55 +03: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
Thodoris Greasidis
9f15ee58df
docs: Fix os configure example in os build-config docs
...
Connects-to: #1231
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-05-16 12:38:44 +03: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
d40f2eb500
actions/auth: fix mixed indentation error
...
Change-type: patch
Signed-off-by: Gergely Imreh <gergely@balena.io>
2019-05-02 13:22:22 +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
Paulo Castro
30c36a26e2
Handle app names that look like a number (eg 1234)
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-27 00:54:15 +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
1b13d1b969
Allow specifying a .local address for logs and push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-25 11:00:45 +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
f816cb4ce8
Fix and update log documentation
...
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 13:04:49 +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
d41fb72ded
refactor: Convert logs action to typescript
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-24 12:48:51 +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
Will Boyce
cba73eec44
tunnel: allow using partial device uuids
...
Connects-to: #1173
Change-type: minor
Signed-off-by: Will Boyce <will@balena.io>
2019-04-24 10:51:42 +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
454f82883e
Add supervisor version information to push documentation
...
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
Paulo Castro
9da5f88ecf
Updated CLI installation notes on README.md and ran prettier
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-18 14:52:51 +01:00
Paulo Castro
29dd5e71a1
Fix docs markdown (deprecation messages for 'local push' and 'sync')
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-04-13 16:23:06 +01: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
Cameron Diver
717affa591
Remove information about livepush in sync deprecation message
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2019-04-09 11:08:40 +01: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
Gergely Imreh
b4439b7d78
ssh: add --noninteractive
flag not to suggest devices to connect to
...
The suggestion happens if the UUID supplied is not found. Because
of that function, it's impossible to do an atomic connect to a device
in non-interactive mode. The auto-suggestion results connecting to
the first available device, which is likely not the intended action.
The current workaround is running a `balena device UUID` and check
its exit code before running `balena ssh UUID`, but since these
are independent steps, still can connect to another device, if between
the two commands anything changes. With this flag used, one could never
connect accidentally to the wrong device due to suggestions.
Change-type: minor
Signed-off-by: Gergely Imreh <gergely@balena.io>
2019-03-12 11:50:17 +00:00
Gergely Imreh
a5cfbb3181
ssh: correct the minimum OS version that allows host OS connection
...
Since openBalena API v0.11.0 (downstream API 9.16.0) the minimum
OS version has been lowered from 2.7.5 to 2.0.0 for host OS access.
Change-type: patch
Signed-off-by: Gergely Imreh <imrehg@gmail.com>
2019-03-11 15:24:12 +00:00
Paulo Castro
6ff43b11b1
Fix 'unauthorized' error for additional members of legacy apps
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-03-07 18:01:19 +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
Thodoris Greasidis
552f8cc4ef
Re-run newest prettier on master
...
Resolves : #1109
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2019-02-22 10:02:02 +02: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
Paulo Castro
6124d8c493
Remove fetching of Mixpanel token
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-02-07 17:06:10 +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
Alexis Svinartchouk
3bff748fbe
Don't offer to disable automatic application updates when using pinning
...
--pin-device-to-release disables the automatic updates disabling
message.
Change-type: minor
2019-01-22 14:44:16 +01:00
Paulo Castro
24fdfc9aef
Update 'balena help local flash' documentation re zipped images
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2019-01-17 17:52:28 +00:00
Alexis Svinartchouk
c63569d592
Support compressed images in balena local flash
...
Change-type: minor
2019-01-16 14:56:31 +01:00
xginn8
8bbb1966a4
Merge branch 'master' into typo
2019-01-15 14:27:02 -05: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
Shaun Mulligan
9d5949e9d1
Merge branch 'master' into typo
2019-01-13 12:15:00 +01:00
Pagan Gazzard
dad3167f16
Lazy-load drive list
2019-01-11 18:36:13 +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
77b763a88f
Update util available-drives action
...
* switch from coffeescript to typescript
* use etcher-sdk instead of drivelist
Change-Type: patch
2019-01-11 17:56:34 +01: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
Matthew McGinn
3e4e661b28
Fix up small docs typo
...
Change-type: patch
Signed-off-by: Matthew McGinn <mamcgi@gmail.com>
2018-12-28 08:40:18 -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
eff49beb36
Wait for the device type compatibility check before showing the form
...
Also now fetches the device type from the image/API only once.
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-14 15:46:27 +02: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
853d146457
Update the os configure examples to better explain --device-type
...
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
Thodoris Greasidis
1e5cf8655e
actions: Add resource tag operations
...
Resolves : #866
HQ: https://github.com/resin-io/hq/issues/150
HQ: https://github.com/resin-io/hq/pull/281
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-12-10 23:05:48 +02: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
Thodoris Greasidis
b6c041c9b5
actions/os-initialize: Convert Promise to a Bluebird one
...
Resolves : #1038
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-27 10:34:21 +02:00
Thodoris Greasidis
93a5380c09
actions/os: Fix os configure using bluebird methods on plain promise
...
Resolves : #1033
Connects-to: #1007
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-26 10:00:49 +02:00
Thodoris Greasidis
5abd240d50
actions/config: Fix examples to include --version as required
...
Connects-to: #1007
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-11-23 16:01:01 +02:00
Akis Kesoglou
06c450e9a5
Fix missing import in os configure
...
Fixes #1028
Change-type: patch
2018-11-20 13:14:49 +02:00
Cameron Diver
6ad4598e7e
Add case-insensitive checking for application names in balena push
...
The filter is added with an `as any`, as the typings dont yet support
using $eq and $ne.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@balena.io>
2018-11-19 12:49:00 +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
Akis Kesoglou
6e36cd139a
Include join
and leave
commands in API documentation
...
Change-type: patch
2018-11-16 16:02: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
a809847d60
Mark api keys in the CLI as non-experimental
...
After the recent SDK updates, they should now work everywhere
Change-type: patch
2018-11-07 16:30:56 +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
4ff42c11e6
Remove rename warning
2018-10-29 22:30:21 +01:00
Tim Perry
dc6cde2cf1
Change env var commands to set app-wide env vars, using the new SDK
...
Change-type: major
2018-10-29 22:29:03 +01: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
Thodoris Greasidis
fd316167d8
Sort device types by name
...
Change-type: minor
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
f60d857c93
utils/promote: Do not rely on the user to always be there
...
Change-type: minor
Depends-on: https://github.com/resin-io/resin-sdk/pull/595
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
31628cfdcb
promote: Use ResinSdk type namespace
...
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-29 22:29:02 +01:00
Thodoris Greasidis
4d42f74c0c
Add support for the Opensource provisioning flow
...
Connects-to: #978
Change-type: major
Depends-on: https://github.com/resin-io/resin-sdk/pull/594
HQ: https://github.com/resin-io/balena/pull/1140
Signed-off-by: Thodoris Greasidis <thodoris@resin.io>
2018-10-29 22:29:02 +01:00
Tim Perry
13729ec4b6
Merge pull request #985 from pdcastro/resin_rename_notice
...
Add rename notice to resin-cli
2018-10-29 22:28:08 +01:00
Will Boyce
332e731023
ssh: Move from resin-sdk-preconfigured to resin-sdk
...
Change-type: patch
Signed-off-by: Will Boyce <will@resin.io>
2018-10-22 16:46:56 +01:00
Paulo Castro
f9263975bc
Add rename notice to resin-cli
...
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2018-10-22 14:09:07 +01:00
Thodoris Greasidis
948e6ea6f8
utils/patterns: Drop resin-sdk-preconfigured
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-20 18:35:34 +02:00
Thodoris Greasidis
ca9247fb19
actions/app: Drop resin-sdk-preconfigured
...
Change-type: patch
Signed-off-by: Thodoris Greasidis <thodoris@balena.io>
2018-10-20 18:35:34 +02:00
Heds Simons
bf71f9ea16
Merge pull request #981 from resin-io/local-mode-v2
...
Local mode v2
2018-10-19 17:09:28 +02:00
Cameron Diver
fe751fdb23
Check supervisor version before attempting to do a local push
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:45:23 +02:00
Cameron Diver
947f91d570
Support multicontainer local mode in resin push
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:56 +02:00
Cameron Diver
c5d4e30e24
logger: Add logs logging function
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:53 +02:00
Cameron Diver
f560aa7523
export resolveProject function from compose module
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:49 +02:00
Cameron Diver
6bcfb2dd51
logs: Add log build function to logger
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:44 +02:00
Cameron Diver
bf062124f7
compose: Add compose typings
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:44:39 +02:00
Cameron Diver
221666f59a
Stop accepting resin-compose.yml as a build composition definition
...
These files are not supported by any other part of the resin
infrastructure, and it could cause confusion with it not being
supported everywhere. The idea was originally added because we
thought we might need to make extensions on docker-compose, but
that hasn't happened.
Change-type: major
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:49 +02:00
Cameron Diver
cd6ee4ef5e
Send push source packages as gzipped data
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:39 +02:00
Cameron Diver
872b17cf24
refactor: Allow setting of a remote build error message
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:32 +02:00
Cameron Diver
a3dd489c70
Respect ignore files when tarring sources
...
This commit brings in the ignore and dockerignore libraries, which when
provided with the patterns in the aforementioned files will ignore them.
Change-type: major
Closes: 889
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:43:22 +02:00
Alexis Svinartchouk
0c1c108b2b
Check for correct architecture when preloading, instead of correct device type
...
Preload will now propose to preload any app that matches the image
architecture.
Change-type: major
Signed-off-by: Alexis Svinartchouk <alexis@resin.io>
2018-10-19 16:43:02 +02:00
Alexis Svinartchouk
f02ed43f33
Default preload boolean parameters to false
...
Change-type: patch
Signed-off-by: Alexis Svinartchouk <alexis@resin.io>
2018-10-19 16:42:51 +02:00
Cameron Diver
63c3d7ceee
fix: Apply prettier to merged files
...
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:42:48 +02:00
Cameron Diver
ec589c2639
Correctly error out on failed remote builds
...
The push command was relying on the output from the builder to indicate
the build status, but this isn't helpful for CI. This commit makes the
remote build module respect the `isError` flag which the builder sends
in any errors. Any errors which come from the builder indicate the
release will not be deployed.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-10-19 16:42:14 +02:00
Scott Lowe
64b4f67477
Update sdk references in wizzard.coffee
...
Change-type:patch
2018-10-18 18:53:03 +02:00
Scott Lowe
0d06701e2f
Update sdk references in notes.coffee
...
Change-type:patch
2018-10-18 16:22:35 +02:00
Scott Lowe
379f1cc217
Update sdk references in device.coffee
...
Change-type:patch
2018-10-18 16:08:29 +02:00
Scott Lowe
7b7ae4ff89
Update sdk sdk references in auth.coffee
...
Change-type:patch
2018-10-18 14:51:03 +02:00
Tim Perry
8df066df12
Fix formatting of preload examples
...
Based on https://github.com/resin-io/docs/pull/915 from @drjasonharrison-vp-eio
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-10-03 15:31:24 +02:00
Pablo Carranza Velez
8298ba5765
device: When registering, print the uuid
...
This restores the behavior from before #911 ,
which is useful from some users.
Closes #966
Change-type: patch
Signed-off-by: Pablo Carranza Velez <pablocarranza@gmail.com>
2018-09-24 15:18:40 +02:00
Tim Perry
8688eb5da0
Include --emulated in the example resin build parameters
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-09-19 15:34:29 +02:00
Theodor Gherzan
3b283d4a98
Device api keys are no longer used in the registration process
...
Change-type: patch
Signed-off-by: Theodor Gherzan <theodor@resin.io>
2018-09-10 12:30:51 +01:00
Pagan Gazzard
94f02f0ad8
Add warning about re-enabling automatic updates
...
Change-type: patch
Signed-off-by: Pagan Gazzard <page@resin.io>
2018-08-15 14:20:11 -07:00
Pagan Gazzard
71eca70a22
Fix errors in getRequestStream
not being propogated
...
Change-type: patch
Signed-off-by: Pagan Gazzard <page@resin.io>
2018-08-14 18:21:10 -07:00
Cameron Diver
e7c68c1a5c
Support emulated and nocache options for remote builds
...
Change-type: minor
Closes : #901
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-08-09 14:36:34 +01:00
Tim Perry
802ccc1b9a
Fix bug where the sudo helper failed in os initialize
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 12:11:26 +02:00
Tim Perry
392cd8569f
Make build trigger hash examples clearer
...
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:47:21 +02:00
Tim Perry
e32eda26d9
Update .resin-sync.yml docs for local push and include example env vars
...
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:21:45 +02:00
Tim Perry
d8aaccf80c
Update typed-error to fix some TS complaints
...
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-09 11:21:45 +02:00
Tim Perry
7c75346a1a
Update klaw
...
The changes from our fork have now been completed and released
Change-type: patch
Signed-off-by: Tim Perry <tim@resin.io>
2018-08-01 16:43:26 +02:00
Tim Perry
e350f9b335
Follow links found during builds
...
Change-Type: patch
2018-07-25 12:38:17 +02:00
Tim Perry
f4f44f978e
Update reconfix to fix volume signature errors in local configure
...
Change-Type: patch
2018-07-24 20:57:40 +02:00
Tim Perry
430d4aeaa7
Be explicit about how much initial history log tailing includes
...
Change-Type: patch
2018-07-20 16:32:31 +02:00
Akis Kesoglou
916cc36430
Lazily import resin-image-fs
...
If for whatever reason resin-image-fs is not importable — eg. if it’s built for another arch — any command that imports `helpers.ts` will just quit without any error/traceback.
2018-07-20 13:04:26 +03:00
Akis Kesoglou
27b877dd33
Forward root CA to device config if one is present
2018-07-19 22:34:31 +03:00
Akis Kesoglou
5cbe1c410f
Add join/leave commands to promote and move devices between platforms
...
Both commands work with local devices by remotely invoking the `os-config` executable via SSH. This requires an as of yet unreleased resinOS (that will most likely be v2.14) and the commands ascertain compatibility merely by looking for the `os-config` executable in the device, and bail out if it’s not present.
`join` and `leave` accept a couple of optional arguments and implement a wizard-style interface if these are not given. They allow to interactively select the device and the application to promote to. If the user has no apps, `join` will offer the user to create one. `join` will also offer the user to login or create an account if they’re not logged in already without exiting the wizard.
`resin-sync` (that's used internally to discover local devices) requires admin privileges. If no device has been specified as an argument, the commands will launch the device scanning process in a privileged subprocess via two new internal commands: `internal sudo` and `internal scanDevices`. This avoids having the user to invoke the commands with sudo and only request escalation if truly needed. This commit also removes the dependency to “president”, implementing “sudo” functionality within the CLI.
Change-Type: minor
2018-07-19 22:18:02 +03:00
Akis Kesoglou
7846af390e
Improve selectFromList
function signature to be much more reusable
2018-07-19 21:53:43 +03:00
Tim Perry
70be2ae596
Tweaks to config options handling after review
2018-07-17 15:38:38 +02:00
Tim Perry
36eb0a108e
Post-review tweaks to OS actions
2018-07-13 19:34:59 +02:00
Tim Perry
0bf6fb1739
Add --version options to os configure & config generate
...
This is used to ensure the correct type of API key is used in all
configuration.
Change-Type: patch
2018-07-13 19:34:59 +02:00
Tim Perry
892adf4c47
Update OS & config actions to the latest SDK
...
Fixes #915
Change-Type: patch
2018-07-13 19:34:59 +02:00
Tim Perry
e62e8b88c2
Simplify logs promises after review
2018-07-12 15:38:27 +02:00
Tim Perry
4388a248b9
Make sure we don't duplicate historical logs when streaming
2018-07-12 15:23:33 +02:00
Tim Perry
f9cf0aaf23
Remove a couple of artifacts of the pubnub logs implementation
2018-07-12 15:10:16 +02:00
Tim Perry
7cb27283c5
Update logs action to use the MC SDK
2018-07-12 01:03:16 +02:00
Tim Perry
52f93f8f12
Add --generate-device-api-key parameter to config generate
...
Change-Type: minor
2018-07-10 19:57:56 +02:00
Tim Perry
bf4f687a2a
Make local commands more resilient to unnamed containers
...
Change-Type: patch
2018-06-28 12:34:31 +02:00
Cameron Diver
1a48fed1f7
Support pinned release preloading
...
Change-type: minor
Closes : #886
Signed-off-by: Cameron Diver <cameron@resin.io>
2018-06-13 12:29:30 +01:00
Tim Perry
398c34d842
Includes new prettier changes, and pin prettier to stop more appearing
2018-06-12 17:43:15 +02:00
Tim Perry
da8483e6a6
Add a multicontainer caveat to the env var commands
...
Change-Type: patch
2018-06-01 12:37:29 +02:00
Ariel Flesler
b7f94a222d
Update resin-compose-parse dependency version to 1.10.2
...
Change-type: minor
2018-05-30 11:57:04 -03:00
Tim Perry
865f085094
Make sure we still show the device commit, despite API changes
2018-05-24 14:43:45 +01:00
Tim Perry
28fe69fe94
Update to latest SDK in lots of easy device commands
2018-05-18 20:05:24 +02:00
Tim Perry
232cf8d426
Update SDK in resin device(s) to ensure the dashboard URL is correct
...
Fixes #768
Change-Type: patch
2018-05-18 20:00:40 +02:00
Cameron Diver
439d8d396f
Add push command which starts a build on remote resin servers
...
Change-type: minor
Connects-to: #843
2018-05-10 11:43:45 +01:00
Tim Perry
4b818ad51c
Style improvements after review
2018-05-03 18:59:28 +02:00
Tim Perry
c2518448a3
Catch require errors and provide helpful instructions
...
Change-Type: patch
2018-05-03 16:01:40 +02:00
Tim Perry
e7a8deed05
Inline the entire resin-cli-errors module
...
It's awkward that error handling requires you to go to a different
package, it makes things more complicated, and there's nowhere else that
really should be reusing this logic. Let's inline it, so we can
deprecate the module entirely.
Change-Type: patch
2018-05-03 15:15:03 +02:00
Tim Perry
2c46c59a79
Update resin-image-fs to stop non-config commands failing in node 10
...
This doesn't fix actual usage of image fs, just makes it possible to
stop commands that don't use it from failing entirely.
Connects-To: #869
Change-Type: patch
2018-04-30 11:14:39 +02:00
Tim Perry
ad2713fc00
Don't show Docker container status from devices, as it can be wrong
...
The status includes a description of how long the device has been in
this state (Up 6 weeks), which is frequently wrong as when the device
first starts up its clock isn't up to date. It's confusing and messy,
best to just remove it entirely.
Fixes #828
Change-Type: patch
2018-04-18 20:16:44 +02:00
Tim Perry
37e4ec6364
Rename expectedError to exitWithExpectedError
2018-04-17 15:18:06 +02:00
Tim Perry
6a8b947c2e
Don't report lots of user input errors
...
Change-Type: patch
2018-04-17 15:18:06 +02:00
Tim Perry
a16ac37625
Include Sentry breadcrumbs for context in error reports
...
Change-Type: patch
2018-04-17 15:18:06 +02:00
Tim Perry
834a2f1e4d
Warn user that api keys will not be shown again in future
2018-04-11 19:31:03 +02:00
Tim Perry
e0bcb5e0b9
Always call done() for api key generation, not just if we're successful
2018-04-11 19:27:58 +02:00
Tim Perry
59d4890eae
Add 'api-key generate' command
...
Change-Type: minor
2018-04-10 19:21:37 +02:00
Tim Perry
dd268993b3
Throw a clear error when logging in with an invalid token
...
Change-Type: patch
2018-04-04 15:43:34 +02:00
Tim Perry
ce64889b04
Clarify isTokenValid logic
2018-03-29 11:11:25 +02:00
Tim Perry
2db1d84d3c
Do not require a login for builds
...
Fixes : #578
Change-Type: patch
2018-03-29 11:11:25 +02:00
Tim Perry
12a1916007
Allow (experimental!) login with API keys
...
Change-Type: minor
2018-03-29 11:11:25 +02:00
Akis Kesoglou
c6c9046826
Fix crash when an app is not specified for build command
...
This is a regression introduced in #818
Change-Type: patch
2018-03-27 19:12:31 +03:00
Alexis Svinartchouk
ca1ac2bb83
Prefix all pine options with '$' in preload to avoid pine warnings.
...
Change-Type: patch
2018-03-23 15:20:18 +00:00
Akis Kesoglou
4f167cb836
Address review feedback
2018-03-22 13:26:47 +02:00
Akis Kesoglou
9455d438e2
Formatting fixes
2018-03-22 13:26:47 +02:00
Akis Kesoglou
a356ecf9b6
Remove unused code
2018-03-22 13:26:47 +02:00
Akis Kesoglou
066ac591ac
Warn early if deploying a multicontainer project to an incompatible app
...
Change-Type: patch
2018-03-22 13:26:47 +02:00
Akis Kesoglou
62f006b89a
Add legacy deploy method back
...
This mostly reverts the removal of the legacy deploy code that pushed image tars via the builder. It’s needed for users to avoid having to switch between CLI versions in order to push to legacy apps as well.
Note: this pins resin-sdk to 9.0.0-beta14 as I couldn’t get it to install otherwise — npm would always install 9.0.0-beta9 instead.
Change-Type: minor
2018-03-22 13:26:47 +02:00
Akis Kesoglou
242c3731ee
Remove redundant import
2018-03-19 20:52:51 +02:00
Akis Kesoglou
5f7eee8eac
Make sure image name is all lowercase
...
Change-Type: patch
2018-03-19 20:52:51 +02:00
Akis Kesoglou
1833f6ff0a
Improve handling of build log output
...
This makes sure build logs don’t leak escape sequences and new lines and they don’t break the output. Also improved “inline” logs by normalising the stream before passing it to “transpose build stream”.
Fixes : #808
Change-Type: patch
2018-03-19 20:52:51 +02:00
Akis Kesoglou
fe01ead023
Fix getting window size when there’s no TTY attached
...
Change-Type: patch
2018-03-15 10:30:54 +02:00
Akis Kesoglou
14a3f51b73
Add docker-compose-aware builds and deployments
...
Legacy behaviour is mostly retained. The most notable change in behaviour is that invoking `resin deploy` without options is now allowed (see help string how it behaves).
In this commit there are also the following notable changes:
- Deploy/Build are promoted to primary commands
- Extracts QEMU-related code to a new file
- Adds a utility file to retrieve the CLI version and its parts
- Adds a helper that can be used to manipulate display on capable clients
- Declares several new dependencies. Most are already indirectly installed via some dependency
Change-Type: minor
2018-03-07 14:48:05 +00:00
Akis Kesoglou
96116aeaec
Fix invoking undefined method
...
Have no idea how this used to work.
2018-03-07 14:47:16 +00:00
Akis Kesoglou
299bc0db13
Update docker-toolbelt
...
New version is 3.1.0.
The updated version is not backwards compatible as it removes all *Async methods that are in wide use in the CLI. The workaround for now is to manually promisify the client and replace all `new Docker()` calls with a shared function that returns a promisified client.
2018-03-07 14:47:15 +00:00
Tim Perry
079ce552e3
*BREAKING*: Remove support for plugins entirely
...
There are very few plugins in real-world use, we're not actively working
on this at all, and the current approach won't work once we move to
standalone node-less binary installation anyway.
Change-Type: major
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
163684e3a9
Update dashboard login to use the multicontainer SDK
...
Change-Type: patch
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
f698f561c9
Multicontainer preload: Update resin-preload to 6.0.0-beta4
...
Change-Type: minor
2018-03-07 14:46:35 +00:00
Alexis Svinartchouk
cb207f18a5
Update the keys action to use the multicontainer SDK
...
Change-Type: patch
2018-03-07 14:46:34 +00:00
Alexis Svinartchouk
76a5cdc977
Require multicontainer SDK
...
* require('resin-sdk') => multicontainer SDK
* require('resin-sdk-preconfigured') => 6.15.0 SDK
* all 'resin-sdk' requires replaced with 'resin-sdk-preconfigured'
* resin-sdk-preconfigured TS typings are copy pasted from the current resin-sdk master
The idea is to progressively replace all 'resin-sdk-preconfigured'
requires with 'resin-sdk' (multicontainer sdk) and eventually remove
resin-sdk-preconfigured from package.json.
Change-Type: patch
2018-03-07 14:46:31 +00:00
Tim Perry
c12360daa8
Tweak TS & add missing deps that may cause build failures in some envs
...
Connects-To: #765
Change-Type: patch
2018-02-20 20:26:18 +01:00
Tim Perry
d8aabfd448
Ensure login does not wait for the browser process to close
...
Unclear why, but for some reason this only actually blocked on the
browser on OSX.
Connects-To: #791
Change-Type: patch
2018-02-16 17:28:19 +01:00
Tim Perry
1ef0a1028f
Add support for Balena in local ssh
...
Change-Type: minor
2018-02-06 12:05:28 +01:00
Thodoris Greasidis
d1c773360f
Fix uuid params being parsed a numbers
...
Connects-To: #489
Change-Type: patch
2018-02-01 17:48:01 +02:00
MoranF
33fd70291a
Add 'or mounted resinOS image'
...
Connects-To: #764
Change-Type: patch
2018-01-30 17:30:18 +01:00
Tim Perry
8c29bba108
Don't use the deprecated 'os configure' format in internal calls
...
Change-Type: patch
2018-01-16 17:54:46 +01:00
Tim Perry
0ba96adbbc
Fix breakage in deploy command from recent TS conversion
...
Change-Type: patch
2018-01-11 10:33:08 +01:00
Tim Perry
83a76f7d6f
Start using Prettier
...
Change-Type: patch
2018-01-10 09:23:00 +01:00
Tim Perry
612012aff8
Lots of small TypeScript tweaks & clarifications from review
2018-01-09 17:14:49 +01:00
Tim Perry
6daed83d88
Lint TypeScript and CoffeeScript with resin-lint
...
Change-Type: patch
2018-01-09 17:14:49 +01:00
Tim Perry
f25442c036
Move documentation generation to TypeScript
...
Change-Type: patch
2018-01-09 17:14:49 +01:00
Tim Perry
ffffd447f2
Convert most of utils to TypeScript
...
Change-Type: patch
2018-01-09 17:14:48 +01:00
Tim Perry
4b511c47f0
Start on some easy TS conversion
2018-01-09 17:14:48 +01:00
Andrew Shirley
ce5fd53822
convert windows paths to posix when passing to tar
...
Due to https://github.com/mafintosh/tar-stream/issues/3 , the tar module
needs posix style paths but system-specific paths are being supplied
Change-Type: patch
2018-01-08 22:50:11 +00:00
Tim Perry
34f24fe331
Fix deprecation warning for os configure, when passing a bare UUID
...
Change-Type: patch
2017-12-22 16:07:19 +01:00
Andreas Fitzek
0653769156
fixed example
2017-12-18 17:03:16 +01:00
Andreas Fitzek
3ed319872a
refactored
2017-12-18 17:03:16 +01:00
Andreas Fitzek
ee124671d8
mention Resin OS version requirement
2017-12-18 17:03:16 +01:00
Andreas Fitzek
1b4dabd37c
Add ssh option for direct host OS access
...
Use the `--host` (short `-H`) option in the ssh command to access
the host OS of the device.
Direct host OS is enabled for devices with Resin OS >= 2.7.5.
Change-Type: minor
Connects-To: #736
Signed-off-by: Andreas Fitzek <andreas@resin.io>
2017-12-18 17:03:16 +01:00
Tim Perry
dba8db19cb
Move from open to opn
...
Change-Type: patch
2017-12-18 14:55:07 +01:00
Tim Perry
1c7a0ba4e1
Ensure logout works even with invalid credentials, or if not logged in
...
Before this point, if you had an invalid token, an expired token, or a
token for a different site, you couldn't log out to clear it properly.
Not a big deal, but awkward and messy, and easily fixed.
Change-Type: patch
2017-12-14 15:34:36 +01:00
Tim Perry
bd6cb04a2b
Replace underscore.string usage with lodash
2017-11-27 12:03:04 +02:00
Tim Perry
001c8f9601
Inline the entire resin-cli-auth module
...
This is part of a general push to demodularize any code that isn't
realistically reusable outside resin-cli, to make the codebase easier to
manage and understand. Once this is done, we'll deprecate the original
module itself.
Change-Type: patch
2017-11-27 12:02:57 +02:00
Tim Perry
eb68bb1a1a
Set up TypeScript compilation, and make a small start on converting the CLI
...
Change-Type: patch
2017-11-23 19:28:15 +02:00
Tim Perry
49d78c56fa
Print a deprecation message if you use the old os configure format
2017-11-16 19:51:34 +01:00
Tim Perry
e38a0c0047
Allow os configure
to configure for an app, not just a specific device
...
This moves to --app and --uuid options, and deprecates the previous
format, but doesn't immediately remove it so this is not a breaking
change.
Connects-To: #691
Change-Type: minor
2017-11-16 19:51:34 +01:00
Tim Perry
eef0d9cdbe
Print help even for expected errors
...
Change-Type: patch
2017-11-16 19:51:17 +01:00
Tim Perry
08c40195e5
Make sure everything uses the same shared deviceApiKey option
2017-11-16 19:09:20 +01:00
Tim Perry
87f46cb957
Allow non-interactice config generate for simple network settings
...
Fixes #695
Fixes #410
Change-Type: minor
2017-11-16 15:04:58 +01:00
Tim Perry
f7075d7db9
Fix issue where network settings were not used by config generate
...
Change-Type: patch
2017-11-16 15:03:49 +01:00
Tim Perry
1fafe64579
Remove resin promote command (which has never worked) to wait for larger resinOS provisioning updates
...
This would be a major change if the command was ever successful, but it
appears it hasn't ever worked for any available published version of
ResinOS, so it's not possible that there are users relying on it.
Change-Type: patch
2017-11-15 14:46:22 +01:00
Tim Perry
890a02e2c8
Fix 'cannot read property R_OK of undefined' error in Node >=6 <6.3
...
Change-Type: patch
2017-11-11 12:29:49 +01:00
Tim Perry
a2635f47ee
Avoid AmbiguousApplication errors in device register when an id is used
...
Change-Type: patch
Connects-To: #665
2017-11-09 16:03:06 +01:00
Alexis Svinartchouk
eef192ff68
Allow preloading jetson-tx2 images, improve flasher images detection and remove the --dont-detect-flasher-type-images option.
...
* update resin-preload to 5.0.0
Connects-To: #705
Change-Type: minor
2017-10-27 12:14:27 +02:00
Alexis Svinartchouk
3bca36c277
Allow specifying --commit=latest
for resin preload
...
Connects-To: #700
Depends-On: https://github.com/resin-io/resin-preload/pull/137
Change-Type: patch
2017-10-25 12:09:08 +02:00
Alexis Svinartchouk
19ce4c4cdb
Respect the -dont-check-device-type option, fix error message
...
Connects-To: #696
Change-Type: patch
2017-10-24 16:45:36 +02:00
Tim Perry
2d43e47610
Add device api keys warning on device register and os configure
2017-10-18 13:43:16 +02:00
Tim Perry
a8f1d16b26
Make resin os configure
safe with device keys for all ResinOS versions
2017-10-18 13:43:16 +02:00
Tim Perry
8e95757f47
Make resin config generate
safe for all ResinOS versions
2017-10-18 13:43:16 +02:00
Pagan Gazzard
3fd4f328ab
Added a device api key parameter to the os configure
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Pagan Gazzard
97eaf174ec
Added a --device-api-key
option to the config generate
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Pagan Gazzard
2ef56a9a3f
Added a --device-api-key
option to the device register
command.
...
Change-Type: minor
2017-10-18 13:43:16 +02:00
Tim Perry
0e4c6c459c
Fix issue where os download
would always download prod images
...
This also adds support for submodules using resin-sdk shared options
rather than resin-sdk-preconfigured.
Change-Type: patch
Connects-To: #688
2017-10-17 21:20:35 +02:00
Alexis Svinartchouk
119fa78927
Update resin-preload to 4.0.2 to support preloading Edison images
...
Change-Type: patch
2017-10-16 19:27:12 +02:00
Tim Perry
82888de036
Document how to resin deploy
to an app as a collaborator
...
Change-Type: patch
2017-10-13 16:13:46 +02:00
Tim Perry
3df7bfe700
Ensure hostname truly is optional when configuring device images
...
Change-Type: patch
2017-10-09 12:03:31 +02:00
Alexis Svinartchouk
10976bed43
Fix resin preload --splash-image argument handling
...
Connects-To: #677
Change-Type: patch
2017-10-06 11:16:06 +02:00
Tim Perry
eb729d149e
Ensure analytics failures (e.g. from broken tokens) at startup don't break commands
...
Change-Type: patch
2017-10-05 19:03:01 +02:00
Tim Perry
492e35e5c2
Fix lodash bugs in device move & quickstart
...
Change-Type: patch
2017-08-31 20:22:36 +08:00
Tim Perry
2bbd45e867
Use DOCKER_HOST from env if possible, and no connection options are available
...
Connects-to: #625
Change-Type: patch
2017-08-31 15:18:32 +08:00
Alexis Svinartchouk
223432406d
Add a --dont-check-device-type option for resin preload
...
Connects-To: #646
Change-Type: minor
2017-08-25 12:27:38 +02:00
Alexis Svinartchouk
e0d661a1da
Remove resin-preload build filtering workaround.
...
Connects to #640
Change-Type: patch
2017-08-24 12:39:17 +02:00
Alexis Svinartchouk
b07a394592
Add progress bars and spinners for resin preload.
...
Connects-To: #628
Change-Type: minor
2017-08-22 18:42:20 +02:00
Alexis Svinartchouk
c6c2f0bedc
Don't try preloading the same build twice in an image.
...
Connects to #626
Change-Type: patch
2017-08-21 19:24:30 +02:00
Alexis Svinartchouk
115e46573b
Use _.fromPairs instead of _.object which was removed in lodash 4.0.0
...
Connects-To: #636
Change-Type: patch
2017-08-21 10:01:25 +02:00
Alexis Svinartchouk
999f269e36
Fix resin preload when a commit is provided.
...
Connects-To #629
Change-Type: patch
2017-08-18 09:37:37 +02:00
Tim Perry
e204707ee0
Upgrade to lodash v4
2017-08-16 18:58:46 +02:00
Cameron Diver
dc1b3c3239
Allow the looking up of applications with the owner
...
change-type: minor
Connects-to: #594
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-08-14 17:00:33 +01:00
Alexis Svinartchouk
22b3c39b2b
Integrate resin-preload
...
* split docker connection options from lib.utils.docker.appendOptions
Connects to #609
Connects to https://github.com/resin-io/resin-preload/pull/81
Change-Type: minor
2017-08-11 15:43:07 +02:00
Tim Perry
b7e2c2571f
Remove inconsistent (and now unneccesary) 'Tagging image as' message
...
Change-Type: patch
2017-08-11 13:30:44 +02:00
Tim Perry
5daa682183
Provide a helpful warning when Docker is not installed
...
Change-Type: patch
2017-08-10 21:40:05 +02:00
Tim Perry
9e6dd57a5c
Help users using old node versions to upgrade
2017-08-09 15:20:50 +02:00
Eugene Mirotin
22e0b4b9dc
Support the new OS with resin-sample.ignore connection file
2017-07-27 14:01:49 +03:00
Tim Perry
1f0bec39d9
Hide the intro quickstart message for now (until it gets renovated)
2017-07-18 16:57:16 +02:00