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
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
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
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
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
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
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
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
83a76f7d6f
Start using Prettier
...
Change-Type: patch
2018-01-10 09:23:00 +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
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
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
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
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
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
492e35e5c2
Fix lodash bugs in device move & quickstart
...
Change-Type: patch
2017-08-31 20:22:36 +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
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
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
Kostas Lekkas
91b3442fc9
Do not explicitly disable ControlMaster option for device SSH connections
...
The backend server that handles `resin ssh` now supports it.
Also removed the option from local ssh connections to devices, where it
basically has no effect (dropbear on devices supports it)
change-type: minor
fixes #568
2017-06-29 11:53:31 +03:00
Tim Perry
e2a165ce80
Show a correct [Info] tag with the deploying progress bar
2017-06-28 18:57:49 +02:00
Tim Perry
ce5685551d
Remove unused function
2017-06-28 18:52:44 +02:00
Tim Perry
15e677e9f1
Refactor stream logger to keep streams as state
2017-06-28 18:52:40 +02:00
Tim Perry
5ccde3db8e
Fix issue when using resin deploy with non-standard stdin
...
This fixes issues when piping `resin deploy` to a non-TTY, and should
solve issues on Windows too.
Connects-To: #539
2017-06-28 18:40:00 +02:00
Cameron Diver
5000febf72
Read ca files and convert to string before passing to the docker daemon
...
Before this commit, the docker daemon would recieve the filename of the
.pem files, which would be interpreted as the body and would fail. This
commit ensures that the actual body of the pem files are sent to the
daemon.
Change-type: patch
Connects-to: #562
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-06-21 11:11:24 +01:00
Eugene Mirotin
8bdacbb11e
dedupe the shared options
2017-06-15 16:43:12 +03:00
Eugene Mirotin
d2a9aee685
improve available drives listing
...
make the config a path to the file and not the stringified JSON
2017-06-15 16:43:02 +03:00
Eugene Mirotin
77a4c6fdc2
move available-drives command to util
2017-06-15 16:43:02 +03:00
Eugene Mirotin
97480d3aa4
Improve the supported device types listing
2017-06-15 16:39:55 +03:00
Eugene Mirotin
2e7e033bb9
allow prebuilding the device config and reusing it
2017-06-15 16:39:55 +03:00
Eugene Mirotin
ad940824a6
list detected drives with resin os available-drives
2017-06-15 16:39:55 +03:00
Eugene Mirotin
ed83514a2f
allow passing --drive to resin device init
2017-06-15 16:39:55 +03:00
Eugene Mirotin
8d91a5732a
tolerate the --yes param to device init
2017-06-15 16:39:55 +03:00
Eugene Mirotin
1cfe64e4a7
choose version during device init, and list versions with resin os versions
2017-06-15 16:39:55 +03:00
Eugene Mirotin
24388811ad
remove the user requirement for the supported devices list
2017-06-15 16:38:55 +03:00
Tim Perry
c8d51d92e7
Show a clear message immediately as the deploy starts, if we're deploying an image.
...
Change-Type: patch
2017-06-15 12:36:40 +02:00
Tim Perry
5a28d4c92f
Make cleanup reliable if a local build fails
2017-06-15 12:36:40 +02:00
Tim Perry
66a4faeea5
Small improvement to resin deploy docs
...
Change-Type: patch
2017-06-15 12:36:40 +02:00
Tim Perry
cf7bf2cb7d
Fix the gzip level for image uploads to a good perf/size balance
2017-06-15 12:01:22 +02:00
Tim Perry
df3c5ca07f
Gzip while streaming, rather than gzipping the buffer up front
...
Connects-To: #549
2017-06-15 12:01:22 +02:00
Tim Perry
e584dc43f7
Gzip images when uploading in resin deploy
...
Change-Type: minor
Connects-To: #549
2017-06-15 12:01:22 +02:00
Tim Perry
90a5b15dbc
Refactor docker stream buffering before start gzipping
2017-06-15 12:01:22 +02:00
Gergely Imreh
974be5cc13
resin build: fix mismatch in command line argument signature
...
The command line arg was taking `devicetype`, but the rest of the code
uses `deviceType`. Thus it was impossible to specify a device type
in practice to build a `Dockerfile.template`.
Change-type: patch
Signed-off-by: Gergely Imreh <imrehg@gmail.com>
2017-05-30 10:34:32 +01:00
Tim Perry
78ab47b584
Fix breaking bug in resin local ssh
2017-05-22 20:49:34 +02:00
Eugene Mirotin
4b5240d8cd
check for proxytunnel presence
2017-05-19 02:10:14 +03:00
Eugene Mirotin
6ae59654a0
fix
2017-05-19 01:44:30 +03:00
Eugene Mirotin
b88f7a993c
escape params
2017-05-19 01:25:01 +03:00
Eugene Mirotin
880fb43fd9
some fixes
2017-05-18 15:12:52 +03:00
Eugene Mirotin
bc79832e1d
resin ssh proxy support
2017-05-12 18:09:43 +03:00
Tim Perry
6e5e4bd8a6
Get docs and the code generating them back in sync (from #515 , #508 )
2017-05-12 12:01:37 +02:00
Akis Kesoglou
fc5640c79d
Draw a progress bar for upload progress
...
Change-Type: patch
2017-05-10 22:28:51 +03:00