Tim Perry
78ab47b584
Fix breaking bug in resin local ssh
2017-05-22 20:49:34 +02:00
Eugene Mirotin
2d729a82a0
fix valid-email path
2017-05-20 00:19:31 +03: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
1d06bc1b4f
Merge pull request #524 from resin-io/520-include-command-line
...
Include full command line arguments in Sentry errors
2017-05-12 13:27:53 +02:00
Tim Perry
88d5ec0c94
Merge pull request #525 from resin-io/508-fix-docs
...
Get docs and the code generating them back in sync
2017-05-12 13:27:35 +02:00
Tim Perry
a5b535753f
Include the username used in Sentry errors, to help us debug them
2017-05-12 12:02:26 +02: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
Tim Perry
6e034acf23
Include full command line arguments in Sentry errors, to help us debug them
2017-05-12 11:48:43 +02:00
Akis Kesoglou
654ec75598
Renamed build arg option to —buildArg/-B
2017-05-11 14:20:24 +03:00
Akis Kesoglou
66876a2c85
Add ability to specify built-time variables for local build
...
Change-Type: patch
2017-05-11 14:14:43 +03:00
Akis Kesoglou
fc5640c79d
Draw a progress bar for upload progress
...
Change-Type: patch
2017-05-10 22:28:51 +03:00
Kostas Lekkas
c12b59b978
Show device dashboard url in 'resin device' output
...
change-type: minor
2017-05-08 13:51:06 +03:00
Cameron Diver
404348f92e
Highlight cache usage in resin build
...
This commit will highlight the usage of the cache when doing a docker
build via `resin build`, which not only helps the user understand what
the build is doing, but also achieves more parity with the cloud
builder.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 14:09:23 +01:00
Cameron Diver
d249ac168a
Fix the not-enough-unicorns bug
...
Add successful build indicator in the form of a unicorn.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 13:18:25 +01:00
Cameron Diver
3ff5880ae3
Allow resin-cli deploy to also upload build logs if present
...
If build is ran through `resin deploy`, then logs will be stored and
uploaded to the database, where the dashboard can display them
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-05-04 13:11:50 +01:00
Eugene Mirotin
8866f47805
proxy support
2017-05-01 14:00:50 +03:00
Eugene Mirotin
3df30c8b5a
fix ssh proxy URL retrieval
2017-04-27 16:20:32 +03:00
Cameron Diver
39b171fd2a
Add documentation for new resin build and resin deploy commands
...
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-26 13:38:35 +01:00
Cameron Diver
f50ae65560
Add cloud-builder builder output parity to build and deploy
...
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-25 13:13:11 +01:00
Cameron Diver
4fa1a9c1c6
Share nocache and tag build options between build and deploy
...
`resin build` had access to the `--nocache` and `--tag` options for
building with docker, but `resin deploy` did not. This commit adds the
options to the shared dockerUtils.appendOptions function.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-24 20:05:18 +01:00
Cameron Diver
9050cb1975
Respect source parameter in resin build
...
Upon changing the name of the source parameter from `context`, some
places weren't changed, this commit fixes that.
Change-type: patch
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-24 16:41:15 +01:00
Cameron Diver
d3772386bf
Add ability to build and deploy image locally using resin-cli
...
Using `resin build` a user can now build an image on their own docker
daemon. The daemon can be accessed via a local socket, a remote host and
a remote host over a TLS socket. Project type resolution is supported.
Nocache and tagging of images is also supported.
Using `resin deploy` a user can now deploy an image to their fleet. The
image can either be built by `resin-cli`, plain Docker, or from a remote
source.
Change-type: minor
Signed-off-by: Cameron Diver <cameron@resin.io>
2017-04-23 14:31:45 +01:00
Eugene Mirotin
225d3acf9e
log unhandled exceptions
2017-04-21 13:10:30 +03:00
Eugene Mirotin
380a94f0f8
update to modules that have native node v4 support
2017-04-14 14:48:19 +03:00
Eugene Mirotin
77b30409bb
update resin-device-init to pull in etcher-image-write
2017-03-28 14:37:13 +03:00
Eugene Mirotin
137473353c
remove username request from the signup process
2017-03-28 14:37:11 +03:00
Eugene Mirotin
08b3db717e
use individual methods promisification instead of promisifyAll
2017-03-27 12:14:55 +03:00
Eugene Mirotin
6cf32e445a
isolate the sudo-runnable command
2017-03-27 11:43:35 +03:00
Eugene Mirotin
cba105a41b
suppress warning during the device init OS download
2017-03-23 15:27:54 +03:00
Tim Perry
69dff0c603
Merge pull request #450 from resin-io/420-add-sentry
...
Add sentry error tracking
2017-03-23 13:11:15 +01:00
Tim Perry
f05b04a6a1
Move sentry DSN to config
2017-03-23 13:10:15 +01:00
Tim Perry
88d8112402
Add sentry error tracking
2017-03-23 12:59:42 +01:00
Kostas Lekkas
f940d7428c
Point to forums instead of gitter
...
change-type: patch
2017-03-23 12:19:59 +02:00
Eugene Mirotin
b629c3601e
implement the version menu
2017-03-22 15:45:05 +03:00
Eugene Mirotin
3619b2f117
allow specifying the version
2017-03-22 13:28:46 +03:00
Eugene Mirotin
4231f50c4c
download the non-preview version by default
2017-03-22 12:55:55 +03:00
Eugene Mirotin
95fff4b7c4
build bare modules
2017-03-22 12:46:06 +03:00
Eugene Mirotin
b3aa3d35f7
fix resin local push help message and lint errors
2017-03-21 12:06:05 +03:00
Kostas Lekkas
73dd625ede
Require superuser for scan commands, also introduce docker timeout
2017-03-10 17:59:54 +00:00
Kostas Lekkas
08db3ace03
Bump resin-sync@7.0.0: use experimental rds which requires superuser permissions
2017-03-10 17:59:54 +00:00
Kostas Lekkas
7ad468dc54
Implement 'resin local stop'
2017-03-09 23:49:56 +00:00
Kostas Lekkas
7aee4d6d7f
Filter our devices that do not expose docker socket
2017-03-09 20:54:11 +00:00
Kostas Lekkas
53bf314820
Remove app create from primary commands
2017-03-08 23:41:35 +00:00
Kostas Lekkas
1ae1a15259
Implement 'resin local'
2017-03-08 23:41:35 +00:00
Kostas Lekkas
20ed8c9169
Implement 'resin local push'
2017-03-08 23:41:32 +00:00
Kostas Lekkas
977e3fb0ff
Implement 'resin local ssh'
2017-03-08 23:41:29 +00:00
Kostas Lekkas
c5df32f952
Implement 'resin local scan'
2017-03-08 22:43:23 +00:00
Kostas Lekkas
f5cd3375f2
Implement 'resin local promote'
2017-03-08 22:43:23 +00:00
Kostas Lekkas
3b4c8f2a01
Implement 'resin local logs'
2017-03-08 22:43:23 +00:00
Kostas Lekkas
356042557e
Implement 'resin local flash'
2017-03-08 22:43:21 +00:00
Kostas Lekkas
00753a5776
Implement 'resin local configure'
2017-03-08 18:43:34 +00:00
Kostas Lekkas
fb06249b08
resin ssh: handle undefined uuid parameter
...
change-type: patch
2017-03-03 17:25:51 +02:00
Kostas Lekkas
2fde6241c2
Support resin sync for remote resin.io AUFS devices
...
change-type: minor
2017-02-01 15:52:17 +02:00
Tim Perry
b629ee6164
Move to preconfigured resin sdk
2017-01-25 19:33:43 +01:00
Tim Perry
7a4de5357e
Fix some issues with Resin-SDK usage after initial testing
2017-01-25 19:25:12 +01:00
Eugene Mirotin
7a0e8beb07
update for the new resin.models.device.generateUniqueKey
2017-01-25 19:25:12 +01:00
Eugene Mirotin
f17cbb1205
use the new SDK factory
2017-01-25 19:25:12 +01:00
Kostas Lekkas
d473509675
Docs: fix requirements for resin ssh and resin sync
...
change-type: patch
2017-01-18 18:04:37 +02:00
Juan Cruz Viotti
6954da4a24
Merge pull request #407 from resin-io/add-shutdown-command
...
Actually add the shutdown command
2016-11-01 12:42:21 -04:00
Pablo Carranza Velez
c18e8f1dbd
Actually add the shutdown command
2016-11-01 12:42:29 -03:00
Juan Cruz Viotti
01cad3c048
Fix Boolean options can't have parameters
error
...
This error was introduced as part of
`9cf42462c029e038e09efc961736946be8bfcb9b`, since the `forceUpdateLock`
option being used in the `reboot` command contains a `parameter`
property despite being declared a boolean.
Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>
2016-10-28 12:11:57 -04:00
Pablo Carranza Velez
9cf42462c0
Add a device shutdown command, and allow forcing reboot and shutdown
2016-10-27 18:39:31 -03:00
Juan Cruz Viotti
c6e669fa6b
Bring back devices supported
command
...
Fixes: https://github.com/resin-io/resin-cli/issues/394
Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>
2016-09-25 19:49:06 -04:00
Kostas Lekkas
16a1741374
resin sync: always display device selection dialog when uuid is not passed as an argument
...
Closes #375
2016-09-15 13:09:25 +03:00
Kostas Lekkas
e0a2217b94
resin sync/ssh: always display selection dialog, even for a single online device
...
Closes #373
2016-09-15 13:09:25 +03:00
Kostas Lekkas
7bd8a683b2
resin sync: remove quotes from --source/--destination help as it implies they're required
...
Closes #372
2016-09-15 13:09:25 +03:00
Kostas Lekkas
6b00bbc73a
resin sync: add --after option
2016-09-15 13:09:25 +03:00
Kostas Lekkas
42d0b52df7
resin ssh: disable ControlMaster ssh option
...
This change was necessary because our ssh gateway does not
support ControlMaster mode.
Closes #366
2016-09-15 13:09:25 +03:00
Kostas Lekkas
97c768edcd
resin sync: add --skip-gitignore option. Improve help section wording
2016-09-15 13:09:25 +03:00
Kostas Lekkas
10a0924cd7
resin sync: load uuid from .resin-sync.yml if possible
2016-09-15 13:09:25 +03:00
Kostas Lekkas
fdb8bf6967
resin sync: add --destination option and require --source if .resin-sync.yml is missing
...
Closes #359
2016-09-15 13:09:25 +03:00
Kostas Lekkas
af8d20ea3f
resin sync/ssh: only accept uuid as destination
...
Also change --port option alias to '-p' from '-t'
2016-09-15 13:09:25 +03:00
Juan Cruz Viotti
8b485b5ad5
Attempt to get device type from the image first partition
...
New images will ship a `device-type.json` file in the first partition,
which we can use instead of querying the API for certain configuration
and initialisation commands.
If the file is not found, or is malformed, we still fallback to the API.
Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>
2016-09-14 11:06:17 -07:00
Praneeth Bodduluri
cb386d15aa
Add OS version to devices,device commands and Supervisor Version to devices command
2016-08-10 18:42:34 +05:30
Praneeth Bodduluri
7b0415a270
Switch to more human-like command name and follow convention from dashboard
2016-08-09 22:44:40 +05:30
Praneeth Bodduluri
3adb8f19bd
Implement device enableDeviceUrl/disableDeviceUrl/hasDeviceUrl/getDeviceUrl
2016-08-09 18:45:24 +05:30
Kostas Lekkas
a70e38ef12
Add global --help option
2016-07-29 15:32:12 +03:00
Kostas Lekkas
81a6843c93
resin ssh: Implement device inference and autoselect if there is a single one
2016-07-07 21:51:53 +03:00
Kostas Lekkas
b672ff1fa1
resin sync: change argument/help to a more meaningful 'resin sync [destination]'
2016-07-07 20:37:11 +03:00
Kostas Lekkas
68808e760e
resin sync: filter out offline devices in interactive choosing dialog
2016-07-07 19:12:39 +03:00
Kostas Lekkas
6d1d4dc173
Support verbose flag for resin sync
2016-06-22 17:59:14 +03:00
Kostas Lekkas
12854db923
Support --verbose/-v flag in resin ssh
...
Closes https://github.com/resin-io/resin-cli/issues/353
2016-06-22 14:57:43 +03:00
Kostas Lekkas
29c20e32f6
Reword config help instructions
...
Closes #351
2016-06-14 19:08:25 +03:00
Juan Cruz Viotti
995194fe2c
Merge pull request #346 from resin-io/misc/ssh-sync-cmd-exe-warning
...
Clarify that sync and ssh only support cmd.exe on Windows
2016-05-19 10:17:28 -04:00
Juan Cruz Viotti
a90d568d5c
Clarify that sync and ssh only support cmd.exe on Windows
...
Signed-off-by: Juan Cruz Viotti <jviottidc@gmail.com>
2016-05-19 10:10:45 -04:00
Kostas Lekkas
a265063fa1
Change resin ssh loglevel from QUIET to ERROR
2016-05-19 16:52:23 +03:00
Juan Cruz Viotti
b061644b19
Make resin ssh work in Windows cmd.exe
...
Signed-off-by: Juan Cruz Viotti <jviottidc@gmail.com>
2016-05-06 13:12:55 -04:00
Juan Cruz Viotti
9a515ef4e3
Return control to capitano at the end of the ssh command
...
Signed-off-by: Juan Cruz Viotti <jviottidc@gmail.com>
2016-04-26 12:37:39 -04:00
Kostas Lekkas
42bfb3b0cc
Implement resin ssh <uuid> command
2016-04-26 16:00:54 +03:00
Juan Cruz Viotti
4a05ce3f53
Attempt to infer the device uuid in resin sync
...
This PR adds functionality to `resin sync` to try to infer what the
device uuid is as follows:
- If the argument to `resin sync` is an app, get all the devices from
that application. If there is only one, auto-select it, otherwise show
an interactive drive selection widget.
- If the argument to `resin sync` is a uuid, use it directly, without
trying to infer anything.
- If no argument is passed to `resin sync`, display an interactive
selection widget showing all your devices from all your applications.
Signed-off-by: Juan Cruz Viotti <jviottidc@gmail.com>
2016-04-25 08:57:19 -04:00
Kostas Lekkas
b5ec49dda1
Remove resin sync 'exec after rsync' feature as it's not supported by
...
ssh gateway
2016-04-25 14:47:05 +03:00
Juan Cruz Viotti
ca40d7ca65
Log CLI events based on original command signature
...
Currently we log a CLI event with the passed command, however this might
include usr params, like a uuid, and therefore cause thousands of
different event names in Mixpanel.
2016-03-29 11:27:53 -04:00
Juan Cruz Viotti
e9b8c38eeb
Integrate sync plugin in the Resin CLI
2016-03-28 09:21:25 -04:00
Juan Cruz Viotti
2d8cf7c479
Allow generating a config.json from an application with config generate
...
Currently, `config generate` requires a device uuid. The command now
accepts either a uuid or an application name, and generates a
config.json accordingly.
2016-03-21 15:42:54 -04:00
Juan Cruz Viotti
3a839c947e
Upgrade resin-device-config to v3.0.0
2016-03-21 15:01:59 -04:00
Juan Cruz Viotti
03d7520de2
Implement config inject command
...
This command allows to user to inject a whole `config.json` file to a
provisioned device.
2016-03-17 16:07:19 -04:00
Juan Cruz Viotti
c5692f8b13
Only throw "Invalid 2FA code" if we're sure that's the cause
...
Currently, such error will be thrown when
`resin.auth.twoFactor.challenge()` rejects, but an invalid code is not
the only thing this function can reject for.
2016-03-17 15:37:02 -04:00
Juan Cruz Viotti
30663b0301
Force update alert to be always shown
...
If `updateCheckInterval` has any meanginful value, the alert will be
shown one out of ten times, or something like that, making the user
likely to miss updates.
The underlying issue is that `update-notifier`, if it detects a cached
update notification, it deletes it, and only attempts to show it back if
`updateCheckInterval` is greater than `Date.now() - lastUpdateCheck`.
2016-03-08 09:23:03 -04:00
Juan Cruz Viotti
6405c6bb6f
Implement device reboot command
...
Fixes: https://github.com/resin-io/resin-cli/issues/319
2016-03-04 09:38:11 -04:00
Juan Cruz Viotti
84ed20d3ec
Implement config generate command
...
This command allows the user to generate a config.json file and either
print it to stdout or save it to a file.
2016-02-26 22:37:15 -04:00
Juan Cruz Viotti
db3de2137b
Remove hardcoded readdir path
...
This was probably used for debugging at some point and got commited
accidentally.
2016-02-19 08:35:10 -04:00
Juan Cruz Viotti
356d2ef6b2
Inject analytics in Capitano
2016-02-12 14:34:16 -04:00
Juan Cruz Viotti
d72750de65
Show if a device is online in devices command
...
Fixes: https://github.com/resin-io/resin-cli/issues/312
2016-02-10 08:51:00 -04:00
Juan Cruz Viotti
6c677fe8cd
Refer to device uuids in command help
...
Currently the CLI asks for a device "name" on device options while it
actually needs a "uuid".
Fixes: https://github.com/resin-io/resin-cli/issues/309
2016-01-28 09:10:11 -04:00
Juan Cruz Viotti
35bba04b16
Show parsed device status in device command
2016-01-26 12:16:55 -04:00
Juan Cruz Viotti
40f015de93
Fix grammar issue: Administration -> Administrative
2016-01-25 09:00:04 -04:00
Juan Cruz Viotti
bee523828a
Improve awaitDevice success message
2016-01-25 08:59:09 -04:00
Juan Cruz Viotti
a346c3f043
Add information on how to login on user permission error
2016-01-21 23:07:08 -04:00
Juan Cruz Viotti
ebefd816b6
Show shorter uuids when listing devices
2016-01-21 10:26:13 -04:00
Juan Cruz Viotti
fb1ef0df63
Promote shorter uuids in all examples
2016-01-21 10:23:40 -04:00
Juan Cruz Viotti
add30b33a1
Remove registered device resource in case of errors in quickstart
...
A device resource needs to be registered with the API before being able
to create the `config.json` file that goes in a device.
This means thats the device image is configured and written to an
external drive (e.g: SDCard) *after* the device resource registered.
If any of the above operations fail, there will be an unitialized orphan
device living in the selected application that the user will have to
remove himself.
2016-01-14 09:14:45 -04:00
Juan Cruz Viotti
4645ad06bc
Redirect users to signup from login if they don't have an account
2016-01-13 00:25:31 -04:00
Juan Cruz Viotti
c3a5998d5c
Reuse messages
2016-01-12 10:45:32 -04:00
Juan Cruz Viotti
78ab2af8ba
Print verbose help in resin help command
2016-01-12 10:39:29 -04:00
Juan Cruz Viotti
11354de596
Print an informative message after successful login
2016-01-12 10:30:56 -04:00
Juan Cruz Viotti
86cac606e4
Add Resin.io ASCII art in login
2016-01-12 10:23:46 -04:00
Juan Cruz Viotti
9b052c9aa5
Handle authentication in quickstart
...
If the user is not logged in, make quickstart prompt for authentication
automatically.
2016-01-12 10:12:44 -04:00
Juan Cruz Viotti
8d709aea7d
Implement purely interactive login command
...
The new login command interactively asks the user if he wants to login
using web/credentials/token.
2016-01-12 09:08:03 -04:00
Juan Cruz Viotti
70ea8dd1a3
Redirect users to GitHub and Gitter in case of errors
...
Users will ge a better experience by knowing exactly where to go for
help if things go wrong.
2016-01-12 08:31:40 -04:00
Juan Cruz Viotti
11c0d2a847
Merge pull request #289 from resin-io/help/device-init-primary
...
Don't make `device init` a primary command
2016-01-12 08:08:38 -04:00
Juan Cruz Viotti
d859228aa9
Stop instructing users to run quickstart as root
...
Elevation is asked in specific steps automatically.
2016-01-11 16:01:40 -04:00
Juan Cruz Viotti
2be105d329
Don't make device init
a primary command
...
Unlikely that a user will run this directly having the more high level
`quickstart`.
2016-01-11 16:00:07 -04:00
Juan Cruz Viotti
9cfce68489
Change license to Apache 2.0
2016-01-03 23:58:51 -04:00
Juan Cruz Viotti
b71c28cec0
Add optional credential-based authentication
2015-12-12 00:11:04 -04:00
Juan Cruz Viotti
26e3cb7957
Add timestamp to logs lines
2015-12-11 20:28:29 -04:00
Juan Cruz Viotti
210680c9c9
Lazy load command actions dependencies
...
In my system (MBPr 13), printing the current version takes over 2
seconds:
```sh
$ time ./bin/resin version
2.4.0
./bin/resin version 1.37s user 0.19s system 73% cpu 2.130 total
```
The CLI takes almost all of these time to parse the dependency tree
before returning control over the actually called command.
To mitigate this problem, we only require the NPM dependencies a command
requires when executing such command, and thus prevent dependencies from
being required and parsed unnecessary.
After this improvement, printing the original example (`resin version`)
returns in less than a second (2x improvement):
```sh
$ time ./bin/resin version
2.4.0
./bin/resin version 0.88s user 0.09s system 102% cpu 0.938 total
```
2015-12-07 11:48:54 -03:00
Juan Cruz Viotti
7d0da7adc0
Merge pull request #277 from resin-io/jviotti/feat/token-login
...
Support for login in with token
2015-12-04 10:55:39 -04:00
Juan Cruz Viotti
2e247faae4
Merge pull request #276 from resin-io/jviotti/feat/quickstart-after-instructions
...
Add helpful instructions after quickstart
2015-12-03 10:24:13 -04:00
Juan Cruz Viotti
3997a61b78
Support for login in with token
...
This is useful in the scenario when the user is using the CLI in an
environment in which he/she doesn't have access to a web browser, like a
headless server or a Vagrant development environment.
2015-12-03 10:22:22 -04:00
Juan Cruz Viotti
8ef27f0525
Add helpful instructions after quickstart
2015-12-02 16:28:32 -04:00
Juan Cruz Viotti
20855be968
Merge pull request #275 from resin-io/jviotti/feat/sudo-explain
...
Explain why we need the computer password on device init
2015-12-02 15:59:27 -04:00
Juan Cruz Viotti
abc8399260
Explain why we need the computer password on device init
2015-12-02 11:15:20 -04:00
Juan Cruz Viotti
9ad2ba1131
Show id in devices command
2015-12-02 09:06:41 -04:00
Juan Cruz Viotti
9a89e3c3ca
Perform automatic token exchange with the dashboard
2015-11-25 09:25:08 -04:00
Juan Cruz Viotti
359c37f259
Merge pull request #270 from resin-io/jviotti/fix/remove-debug-download-msg
...
Simplify download output message
2015-11-24 11:07:40 -04:00
Juan Cruz Viotti
ae8621dc81
Simplify download output message
...
The message displayed the output of the download, which was mainly used
for debugging purposes when developing `device init` and `quickstart`.
2015-11-23 23:38:28 -04:00
Juan Cruz Viotti
e08c3752f9
Show device types when selecting applications
...
Some CLI commans prompt to select an existing application, presending a
dropdown with all the application names, however it's hard to remember
which application belon to which device type, which makes it easier to
select the wrong application.
2015-11-23 09:23:08 -04:00
Juan Cruz Viotti
a4642f6184
Clarify resin url on auth and whoami
...
When you change the `resinUrl` config from time to time it can be
confusing to remember where you're logging in, or in which host you're
in.
Currently I have to check the configuration files/environment variables
manually or run `resin settings`.
This PR prints the detected resin url on `resin login` and `resin
whoami` so it's always clear where you are.
2015-11-16 10:11:08 -04:00
Juan Cruz Viotti
f52dd2976f
Implement settings command
...
This command allows the user to list all detected settings.
2015-11-15 22:08:02 -04:00
Juan Cruz Viotti
43697a3476
Show uuid in devices command
...
The command to get information about a device, `resin device` requires a
`uuid` as a parameter. Given that we don't show uuids in `resin
devices`, the user has no way to know what uuid to pass to get extra
information.
We also remove some non very used information columns from `resin
devices` to make space for the uuid.
2015-11-13 14:06:55 -04:00
Juan Cruz Viotti
c3b5a768e1
Handle Windows permissions elevation automatically
2015-11-12 13:30:48 -04:00
Juan Cruz Viotti
ba318f2939
Implement device move command
...
This command allows to user to move a device to another application he
owns.
2015-11-12 07:47:16 -04:00
Juan Cruz Viotti
f64676ab98
Implement config reconfigure command
...
This command allows the user to reconfigure an already provisioned
device.
Fixes: https://github.com/resin-io/resin-cli/issues/102
2015-11-11 10:38:45 -04:00
Juan Cruz Viotti
4fc7a4e436
Make use of resin-config-json for config commands
...
This module encapsulates the low level details of `config.json` I/O and
tests them extensively.
See: https://github.com/resin-io/resin-config-json
2015-11-11 10:04:46 -04:00
Juan Cruz Viotti
3b35aed3bf
Implement config write command
...
This command allows the user to overwrite properties of the config.json
file.
2015-11-10 14:28:18 -04:00
Juan Cruz Viotti
5509a3e9fd
Implement config read command
...
This command is used to read a config.json from a provisioned device
2015-11-10 12:53:34 -04:00
Juan Cruz Viotti
c866f6e46c
Use president to provide sudo functionality
2015-10-26 09:47:49 -04:00
Juan Cruz Viotti
de83a06db8
Clarify the need of computer password during sudo
...
Since we only prompt "Password:", it might be confusing for some users
that think they have to enter their Resin.io password instead.
Fixes: https://github.com/resin-io/resin-cli/issues/239
2015-10-26 08:49:41 -04:00
Juan Cruz Viotti
363f12f81b
Refer to the correct waiting stream function
...
We recently changed to using `rindle`, however looks like we forgot
to replace this particular instance.
2015-10-26 08:34:07 -04:00
Juan Cruz Viotti
e962371b59
Merge pull request #248 from resin-io/jviotti/remove/associate
...
Remove app associate command
2015-10-21 14:13:28 -04:00
Juan Cruz Viotti
fc5fe6cf68
Fix validation module require typo
2015-10-21 13:28:51 -04:00
Juan Cruz Viotti
f921488e8c
Remove app associate command
2015-10-21 13:25:22 -04:00
Juan Cruz Viotti
8fe08642f5
Merge pull request #245 from resin-io/jviotti/feature/simplify-quickstart
...
Remove project directory creation in quickstart
2015-10-21 13:20:35 -04:00
Juan Cruz Viotti
822632718f
Merge pull request #247 from resin-io/jvioti/refactor/os
...
Remove unused getOperatingSystem function
2015-10-21 11:43:19 -04:00
Juan Cruz Viotti
f66cd00646
Remove project directory creation in quickstart
...
The last part of `quickstart` feels weird. By consensus, we remove the
part that attempts to create a project directory and leave that step to
the user.
2015-10-21 11:18:29 -04:00
Juan Cruz Viotti
965fd8fc19
Remove unused getOperatingSystem function
2015-10-21 10:20:38 -04:00
Juan Cruz Viotti
7a4f551a47
Use rindle instead of custom waitStream
2015-10-21 10:17:10 -04:00
Juan Cruz Viotti
c1e6a28640
Refactor validation to a single place
2015-10-21 09:37:25 -04:00
Juan Cruz Viotti
ec72f93480
Merge pull request #242 from resin-io/jviotti/feature/us-pw-login
...
Implement user/password login with 2FA support
2015-10-21 09:32:17 -04:00
Juan Cruz Viotti
8913fb515b
Implement user/password login with 2FA support
2015-10-21 08:28:20 -04:00
Juan Cruz Viotti
f2507daa09
Allow advanced option in device init
...
This option is inherited to `os configure`.
2015-10-20 09:16:56 -04:00
Juan Cruz Viotti
ff81c1e514
Merge pull request #234 from resin-io/jviotti/feature/advanced-options
...
Ignore advanced configuration questions by default
2015-10-20 09:12:38 -04:00
Juan Cruz Viotti
bde5cc65da
Merge pull request #235 from resin-io/jviotti/fix/device-register-help
...
Load device info after all other device commands
2015-10-19 15:51:15 -04:00
Juan Cruz Viotti
d28ecf3230
Allow passing a custom uuid to device register
2015-10-19 14:16:47 -04:00
Juan Cruz Viotti
8562f723c5
Load device info after all other device commands
...
This command obscures help pages for all device commands registered
afterwards since it's a common prefix for all of them.
2015-10-19 14:14:04 -04:00
Juan Cruz Viotti
f6d2043747
Merge pull request #232 from resin-io/jviotti/fix/app-create-validation
...
Require application name to have at least 4 characters
2015-10-19 14:06:43 -04:00
Juan Cruz Viotti
ec28bd9c9e
Ignore advanced configuration questions by default
...
The advanced questions can be enabled by passing `--advanced` in `os
configure`.
2015-10-19 14:02:57 -04:00
Juan Cruz Viotti
ad68dcf692
Fix --type option taking no effect in app create
2015-10-19 13:07:23 -04:00
Juan Cruz Viotti
0b7e2a2c8c
Require application name to have at least 4 characters
...
We get a weird error message from pine otherwise:
ResinRequestError: Request error: It is necessary that each app name
that is of a user (Auth), has a Length (Type) that is greater than or
equal to 4.
2015-10-19 10:56:02 -04:00
Juan Cruz Viotti
b6ebd0631a
Merge pull request #229 from resin-io/jviotti/feature/os-initialize-type-option
...
Take device type as an option in os initialize
2015-10-15 09:59:44 -04:00
Juan Cruz Viotti
1cfbd4197d
Improve the way the update notifier is shown
...
Current has the following problems:
- Our custom message gets printed even if the notifier doesn't contain
an update.
- The notifier box is deferred, therefore it's printed at the end of the
command. Since our custom message is printed at the beginning, it makes
no sense at all.
2015-10-15 09:18:45 -04:00
Juan Cruz Viotti
b2425d2c0e
Take device type as an option in os initialize
2015-10-15 09:11:38 -04:00
Juan Cruz Viotti
71ee0a6cf7
Support drive option in os initialize
...
This allows the user to bypass the drive selection dialog.
This option can be used along with `--yes` to make the command
completely non-interactive. For example:
$ resin os initialize rpi.img 'raspberry-pi' --drive /dev/disk2 --yes
2015-10-15 08:14:35 -04:00
Juan Cruz Viotti
4326ad4d9c
Merge pull request #227 from resin-io/jviotti/fix/os-initialise-yes
...
Add missing `yes` option to `os initialize`
2015-10-15 07:44:33 -04:00
Juan Cruz Viotti
58713dc291
Add missing yes
option to os initialize
...
This option is tried to be used within the command, but is not defined
as a formal Capitano option.
2015-10-14 17:49:27 -04:00
Juan Cruz Viotti
adf4aef517
Clarify the need for admin privileges on update
...
Fixes: https://github.com/resin-io/resin-cli/issues/223
2015-10-14 13:45:08 -04:00
Juan Cruz Viotti
cddf630907
Avoid _.ary in temporal path disposer
...
For some reason fails with a weird Bluebird error on Windows
2015-10-12 18:12:58 -04:00
Juan Cruz Viotti
e5e871ddcd
Upgrade SDK to v3.0.0
...
Breaking changes in this version:
- `resin.models.device.generateUUID()` is now async.
2015-10-12 08:34:22 -04:00
Juan Cruz Viotti
3149464c7a
Shorten the length of await device message
...
If the spinner message doesn't fit in your terminal, each spinner
position will be printed in different lines.
We mitigate this by dramatically shortenning the message.
2015-10-07 11:38:59 -04:00
Juan Cruz Viotti
97d9b7816f
Merge pull request #214 from resin-io/jviotti/feature/plugin-warn-red
...
Print plugin warnings in red as other errors
2015-10-06 19:18:33 -04:00
Juan Cruz Viotti
ec77437080
Print plugin warnings in red as other errors
...
For the sake of consistency.
2015-10-06 18:51:17 -04:00
Juan Cruz Viotti
f8470287c1
Separate general help per topic relevance
...
Only list primary commands by default, unless a `--verbose` option is
passed to list the additional ones.
Fixes: https://github.com/resin-io/resin-cli/issues/101
2015-10-02 08:50:32 -04:00
Juan Cruz Viotti
445e37ccaf
Call os initialize as an elevated process
...
Currently, the fact that `os initialize` requires elevated permissions
forced us to require calling commands that reuse it, such as `device
init` and `quickstart` with administrator permissions as well.
This ended up causing issues like saving images in the cache that belong
to root, or initializing git repositories that requires `sudo` to
commit.
The solution is to call `os initialize` as a child process preppending
`sudo` within `device init`.
Fixes: https://github.com/resin-io/resin-cli/issues/109
2015-10-01 13:07:53 -04:00
Juan Cruz Viotti
90be01b05d
Make os initialize take a device type instead of a uuid
2015-09-30 14:31:23 -04:00
Juan Cruz Viotti
0443a35f2b
Merge pull request #207 from resin-io/jviotti/fix/promise-using
...
Fix incorrect Promise.using syntax
2015-09-30 12:06:51 -04:00
Juan Cruz Viotti
79d1892b66
Send device type correctly to getManifestBySlug
...
Currently, we we're sending the wholea device object to
`getManifestBySlug`, which ended up in an unsupported device error.
2015-09-30 11:38:34 -04:00
Juan Cruz Viotti
0e06ac464f
Fix incorrect Promise.using syntax
...
`Promise.using` takes the function that acts on the resource as the
second argument, instead of as `.then()`.
2015-09-30 11:37:27 -04:00
Juan Cruz Viotti
5ae83d8337
Merge pull request #206 from resin-io/jviotti/fix/uncompress-os-download
...
Uncompress zip packages in os download
2015-09-30 10:48:36 -04:00
Juan Cruz Viotti
8234f7675a
Uncompress zip packages in os download
...
When downloading an operating system image, if the image is a zip
package, uncompress it automatically.
2015-09-30 10:16:24 -04:00
Juan Cruz Viotti
15cb0c4889
Use rimraf for deleting os temporary files
...
We already use `rimraf` for deleting os temporary directories, however
there are a few benefits of using it for files as well:
- Simplicity. We avoid having to check if a path is a file or directory.
- `rimraf` attempts to workaround the known Windows issues of anti
viruses not closing files. Described in more detail here: https://github.com/resin-io/resin-cli/blob/master/TROUBLESHOOTING.md#i-get-ebusy-errors-after-initializing-a-device-even-as-administrator-on-windows
2015-09-30 10:06:08 -04:00
Juan Cruz Viotti
a3ebd9827f
Merge pull request #204 from resin-io/jviotti/fix/console.info
...
Use console.info in os download
2015-09-30 10:05:19 -04:00
Juan Cruz Viotti
30d84f015a
Merge pull request #199 from resin-io/jviotti/feature/197/device-init-apps
...
Prompt for select application if running device init with no arguments
2015-09-29 15:31:59 -04:00
Juan Cruz Viotti
6377618c12
Use console.info in os download
...
`console.info` calls can be quieted by the `--quiet` option.
2015-09-29 15:15:39 -04:00
Juan Cruz Viotti
f17e9c97b8
Prompt for select application if running device init with no arguments
...
Currently, if `device init` was ran without an application argument, we
attempted to get the application name from the current directory, given
it was a git repository.
This approach led to confusions from time to time, so now we prompt the
user to select one of it's own applications from a dropdown instead of
checking the current directory in this edge case.
Fixes: https://github.com/resin-io/resin-cli/issues/197
2015-09-29 15:10:59 -04:00
Juan Cruz Viotti
21fcdfaff6
Use Promise.disposer() to make sure temp files are deleted
2015-09-29 15:08:24 -04:00
Juan Cruz Viotti
d704c10197
Implement os initialize command
...
This command initialized an operating system image with a disk device.
2015-09-29 14:52:34 -04:00
Juan Cruz Viotti
7e6eb4b9e4
Implement device register command
...
This command registers a new device with the passed application,
returning the new device uuid.
2015-09-29 14:33:31 -04:00
Juan Cruz Viotti
42256384be
Implement os configure
...
This command, given a path to an image and a device uuid, perform
configuration based on the resin-device-type manifests.
2015-09-29 13:47:10 -04:00
Juan Cruz Viotti
f6d8f12ba2
Implement os download command
...
This command download an unconfigured image to both the cache and to the
specified location by the `--output` option.
2015-09-29 13:03:14 -04:00
Juan Cruz Viotti
adc0b183cd
Improve device awaiting message
...
Current message sounds too robotic.
2015-09-11 19:13:30 +03:00
Juan Cruz Viotti
828b4f73d1
Fix selecting existing application in quickstart
2015-09-11 18:30:30 +03:00
Juan Cruz Viotti
904b9f07fb
Highlight errors in red
...
- Move error translation logic to resin-io/resin-cli-errors.
- Force `process.exit()`.
2015-09-11 14:47:38 +03:00
Juan Cruz Viotti
64c8420c9d
Implement device specs. Fix #99
...
Support for all devices. Tested in the following ones:
- Intel Edison.
- Raspberry Pi 2.
- Parallella.
2015-09-11 13:02:59 +03:00
Juan Cruz Viotti
79afa79fd9
Use settings from the SDK during login
...
This enforces all clients to use the Resin Settings Client version that
the SDK provides, reducing incompatibilities caused by different modules
requiring different Resin Settings Client versions.
2015-09-08 09:06:03 +03:00
Juan Cruz Viotti
dc257b5cab
Check token validity against the API when login
...
Consider the following case:
The SDK is configured to point to staging, but the user passes a token
from production, or viceversa. Since the token is valid in a sense that
is valid JWT and contains real data, the CLI will report as a success.
The user will then get Unauthorized errors when using the API.
2015-09-05 20:17:34 +03:00
Juan Cruz Viotti
4bdcd3d2ee
Merge pull request #180 from resin-io/issue_#103
...
Resin CLI Events integration. Fix #103
2015-09-05 20:11:52 +03:00
mike
b0650530cc
Resin CLI Events integration. Fix #103
2015-09-05 19:15:31 +03:00
mike
8c3e832cdc
Replace device name with uuid in env-variables command example
2015-09-01 00:56:01 +03:00
Juan Cruz Viotti
a090e6c21d
Refactor quickstart
...
- Use promises.
- Move some logic to `helpers`.
- Inline `device await` command.
2015-08-27 10:01:33 -04:00
Juan Cruz Viotti
d10d4ce185
Merge pull request #174 from resin-io/jviotti/feature/confirm-abortion
...
Add `Aborted` error message when not accepting a confirmation
2015-08-24 08:47:29 -04:00
Juan Cruz Viotti
5de0f66d7a
Don't check for available updates when running as root
...
`update-notifier` persist its update check results in a file, which is
then read when running again the application.
If this file gets written when the application is being run as root, we
get ugly EPERM issues.
2015-08-20 16:54:22 -04:00
Juan Cruz Viotti
354921ca92
Add Aborted
error message when not accepting a confirmation
...
This prevents a lot of duplicate code to check for confirmation status
and exit from the current action.
2015-08-20 16:16:20 -04:00
Juan Cruz Viotti
dc513a08f6
Update Resin CLI Form to v1.2.0
...
This version includes support for the `drive` input type.
2015-08-20 11:55:53 -04:00
Juan Cruz Viotti
7f4863da86
Upgrade Nplugm to v3.0.0
...
This new version supports promises and contains speed improvements.
2015-08-19 11:27:28 -04:00
Juan Cruz Viotti
a803d4f646
Remove plugins manipulation commands
...
Since we're now forcing users to rely on `npm` directly for updates, we
can also get rid of plugin commands that attempt to
install/update/remove using npm programatically and require users to use
`npm` directly as well.
This commit removes the following commands:
- `plugins`
- `plugin install`
- `plugin update`
- `plugin remove`
Despite plugin related commands being removed, *the functionality that
scans for plugins and registers them remains intact*.
2015-08-19 10:57:42 -04:00
Juan Cruz Viotti
85d940df66
Merge pull request #165 from resin-io/jviotti/feature/update-notifier
...
Notify the user if there is an available update
2015-08-19 07:56:40 -04:00
mike
019e2ac357
Display msg when app/device does not have env variables. Fix #166
2015-08-18 18:12:08 +03:00
Juan Cruz Viotti
f19588032f
Notify the user if there is an available update
...
For this we use the `update-notifier` module with its default settings.
This module will print a nice banner prompting the user to run the
corresponding npm command to update.
2015-08-18 08:53:06 -04:00
mike
0595452c3d
Add message informing the user about potential delay in system img initialization. Fix #90 .
2015-08-18 15:43:52 +03:00
Michalis Korakakis
d6305df48e
Merge pull request #163 from resin-io/issue-108
...
Reword ending message in quickstart. Fix #108
2015-08-18 15:00:38 +03:00
mike
3dd5f5858a
Reword ending message in quickstart. Fix #108
2015-08-18 14:34:15 +03:00
mike
02a06e1e7c
Reword output during download in device init. Fix #106 .
2015-08-18 13:55:04 +03:00
Juan Cruz Viotti
fd5a34a1c4
Refactor env action module to use promises
2015-08-17 10:32:22 -04:00
Juan Cruz Viotti
a698b25fda
Remove devices supported
command
...
The command is not necessary and unused.
2015-08-17 10:05:36 -04:00
Juan Cruz Viotti
89bd861d8e
Merge pull request #159 from resin-io/jviotti/refactor/device
...
Refactor device actions to use promises
2015-08-17 10:03:57 -04:00
Juan Cruz Viotti
e5b7aae4ae
Refactor device actions to use promises
2015-08-17 09:49:59 -04:00
Juan Cruz Viotti
09a5788902
Refactor keys action to use promises
2015-08-17 09:32:05 -04:00
Juan Cruz Viotti
f63391acf9
Make use of projectsDirectory
SDK setting in Quickstart
...
We were currently building this path ourselves, hardcoding the place of
the resin local per user directory instead of relying on the foundations
that `resin-settings-client` give us.
2015-08-17 09:06:27 -04:00
Juan Cruz Viotti
70c060b124
Refactor auth actions to use promises
2015-08-17 08:22:48 -04:00
Juan Cruz Viotti
7a8a3c851b
Merge pull request #138 from resin-io/refactor/help
...
Refactor help module
2015-08-17 08:02:15 -04:00
Juan Cruz Viotti
1096b2d212
Merge pull request #143 from resin-io/jviotti/refactor/app
...
Refactor app actions to use promises
2015-08-17 08:02:04 -04:00
Juan Cruz Viotti
ee286c5690
Merge pull request #144 from resin-io/jviotti/refactor/note
...
Refactor note set command to use promises
2015-08-17 08:01:47 -04:00
Juan Cruz Viotti
1da1d2e6fc
Merge pull request #152 from resin-io/jviotti/fix/151/ssh-key-list
...
Print ssh key separately from the information table
2015-08-17 08:01:32 -04:00
Juan Cruz Viotti
30f24333c0
Implement a spinner when awaiting for a device. Fix #107
...
Fixes:
- https://github.com/resin-io/resin-cli/issues/107
2015-08-14 14:35:38 -04:00
Juan Cruz Viotti
8c9a0e0ff1
Fix broken device await command
...
There were two issues that prevented this command from working
correctly:
1- `Promise.delay()` is used, but `Promise` was not imported.
2- The following line had incorrect indentation (spaces instead of
tabs):
poll().nodeify(done)
Therefore CoffeeScript interpreted that the line had to be executed at
the end of the `poll()` function, causing `poll()` to never be called.
2015-08-14 14:11:49 -04:00
Juan Cruz Viotti
e712e2f266
Print ssh key separately from the information table
...
Since the public key string is long, it might wrap to lines below,
causing the table layout to break.
A quick solutio is to print the ssh key after the table.
Fixes:
- https://github.com/resin-io/resin-cli/issues/151
2015-08-14 12:25:55 -04:00
Juan Cruz Viotti
83382cc8f7
Merge pull request #145 from resin-io/jviotti/fix/logs-help-indentation
...
Fix logs command help string indentation
2015-08-14 08:27:38 -04:00
Juan Cruz Viotti
8401aaeae2
Merge pull request #149 from resin-io/jviotti/fix/111/email-validation
...
Validate that email address is valid during signup. Fix #111
2015-08-14 07:58:40 -04:00
Juan Cruz Viotti
abf5740950
Merge pull request #148 from resin-io/jviotti/fix/14/logs-history
...
Force logs command to exit when not in --tail mode. Fix #14 .
2015-08-14 07:58:05 -04:00
Juan Cruz Viotti
e9ec6c67b2
Validate that email address is valid during signup. Fix #111
...
For this we use a third party dependency from npm called `valid-email`
to avoid hardcoding and having to mantain a regular expression.
2015-08-13 15:22:22 -04:00
Juan Cruz Viotti
69566f7fc3
Force logs command to exit when not in --tail mode. Fix #14 .
...
PubNub keeps the process alive after a history query for some reason, so
trying to print the logs history like:
$ resin logs <uuid>
Will result in the logs being printed correctly, but the process waiting
infinitely without ending.
The workaround consists in forcing `process.exit` to exit the process
with an error code zero.
Caveats:
- This workaround prevents this command to be used programatically.
Issue: https://github.com/resin-io/resin-cli/issues/14
2015-08-13 15:08:16 -04:00
Juan Cruz Viotti
6e4b299c7d
Remove preferences command
2015-08-13 15:00:51 -04:00
Juan Cruz Viotti
ef35ebf79d
Fix logs command help string indentation
...
For some reason it was indented a few times unnecesarily.
2015-08-13 14:33:19 -04:00
Juan Cruz Viotti
1bc78edf71
Refactor help module
...
Main changes:
- Use the `columnify` module to display the commands instead of using
manual parsing.
- Extract logic to create a string representation from an option
signature to Capitano, and reuse here.
See https://github.com/resin-io/capitano/pull/28
Some bugs were caught and fixes during the refactoring:
- In command help, if the command didn't exist, we reused default
Capitanos command not found function which uses `process.exit(1)`. This
was changed to pass a custom error to `done()`, so the command fails
correctly when using programatically.
- General help didn't call `done()` at all, thus causing problems if
using the command programatically someday.
2015-08-13 14:19:07 -04:00
Juan Cruz Viotti
d5204a09f7
Refactor note set command to use promises
2015-08-13 14:17:02 -04:00
Juan Cruz Viotti
4647aa70c0
Implement utils/helpers to abstract common app patterns
...
- Add helpers.confirm() to abstract the process of asking for
confirmation.
- Add helpers.selectDeviceType() to abstract the form needed to ask for
device types.
The functions on this module are reused by app actions.
2015-08-13 14:04:47 -04:00
Juan Cruz Viotti
25c6246e9f
Refactor app actions to use promises
...
Use promises instead of `async` internally inside the following
commands:
- app create.
- app remove.
- app associate.
2015-08-13 13:42:49 -04:00
Juan Cruz Viotti
50cb04b6f7
Remove unused dependencies imports from various files
2015-08-13 13:04:22 -04:00
Juan Cruz Viotti
09fe4b11ad
Merge pull request #139 from resin-io/jviotti/feature/drive-widget
...
Use Visuals drive widget in device init
2015-08-13 12:35:41 -04:00
Juan Cruz Viotti
4157f21e06
Merge pull request #140 from resin-io/jviotti/cleanup/elevate
...
Remove outdated Windows elevation mechanism
2015-08-13 12:23:26 -04:00
Juan Cruz Viotti
e60c0605e5
Use Visuals drive widget in device init
...
- Replace custom `drivelist` logic in "device init" with the new `drive`
widget.
2015-08-13 11:56:16 -04:00
Juan Cruz Viotti
3d36e5f5d3
Remove outdated Windows elevation mechanism
...
This functionality is outdated and not using anymore due to limitations
in the way it was addressed.
The module and dependencies are removed for now, and will be added back
in the future, once a better approach is planned.
2015-08-13 11:45:50 -04:00
Juan Cruz Viotti
57319f26a6
Slim down unused functionality
2015-08-12 08:17:46 -04:00
Juan Cruz Viotti
5c96663d1e
Merge pull request #134 from resin-io/remove/drive-command
...
Remove drive command
2015-08-05 12:24:25 -04:00
Juan Cruz Viotti
ffb48c8669
Merge pull request #135 from resin-io/remove/examples-commands
...
Remove examples commands
2015-08-05 07:04:03 -04:00
Juan Cruz Viotti
dc030f4cd1
Implement Quickstart command
2015-08-04 20:16:55 +03:00
Juan Cruz Viotti
b726a2d778
Remove examples commands
2015-08-04 10:00:09 -04:00
Juan Cruz Viotti
a715ec9dc1
Remove drive command
2015-08-04 09:57:59 -04:00
Juan Cruz Viotti
d24b871964
Merge pull request #131 from resin-io/remove/selfupdate
...
Remove selfupdate functionality
2015-08-04 09:53:48 -04:00
Juan Cruz Viotti
b515e427ff
Merge pull request #129 from resin-io/issue_#73
...
Add email address to the returned information, when using whoami(). Fix #73 .
2015-08-03 16:14:47 -04:00
mike
f31eb7c2b5
Add email address to the returned information, when using whoami(). Fix #73 .
2015-08-03 21:24:22 +03:00
Juan Cruz Viotti
d423a6ea24
Remove selfupdate functionality
...
We added this because we thought that knowledge of the supported device types, along with the configuration procedures was going to be encoded in the CLI.
With device specs, this is not longer the case.
2015-08-03 12:20:42 -04:00
mike
9564b4e478
Display correctly the newly-created application id. Fix #117
2015-07-29 21:17:21 +03:00
mike
e2125b8ce9
Fix #73
2015-07-29 21:15:29 +03:00
mike
cf512cc01b
Integrate new resin-cli-visuals functionality
2015-07-29 16:34:31 +03:00
mike
0bbfbe36c7
Replace device name with uuid, found in resin envs examples in enviroment-variables
2015-07-27 22:49:11 +03:00
mike
5b5d1be52f
Integrate resin-cli-form
2015-07-27 19:50:47 +03:00
Juan Cruz Viotti
cb808869dd
Merge pull request #110 from resin-io/support_promises
...
Add promise support for Resin-SDK dependency
2015-07-24 08:02:40 -04:00
mike
64d83dccfb
Add promise support for Resin-SDK dependency
2015-07-24 00:24:17 +03:00
Juan Cruz Viotti
1d53db2854
Add registered_at UNIX epoch
2015-07-23 12:47:49 -04:00
mike
46fa4ee2a2
Upgrade Resin VCS dependencies
2015-07-11 00:03:20 +03:00
Juan Cruz Viotti
a7cefe44bf
Merge pull request #86 from resin-io/feature/remove-selfupdate
...
Remove selfupdate functionality. Notify in all cases.
2015-07-09 13:45:09 -04:00
Juan Cruz Viotti
9d4ac46985
Default device.last_seen to 'Not seen'. Closes #84 .
2015-07-09 09:56:39 -04:00
Juan Cruz Viotti
e926ac46c9
Remove selfupdate functionality. Notify in all cases.
2015-07-09 08:18:06 -04:00
Juan Cruz Viotti
381e63bfc9
Merge pull request #70 from resin-io/refactor/new-visuals
...
Upgrade Resin CLI Visuals and use it's new capabilities
2015-06-12 09:47:30 -04:00
Juan Cruz Viotti
e779347ff2
Merge pull request #69 from resin-io/feature/no-chop-key
...
Don't chop SSH key
2015-06-11 12:48:16 -04:00
Juan Cruz Viotti
8fa906dd48
Upgrade Resin CLI Visuals and use it's new capabilities
2015-06-11 12:46:56 -04:00
Juan Cruz Viotti
7e5ecd634d
HOTFIX: isLoggedIn now returns a possible error
2015-06-11 12:40:49 -04:00
Juan Cruz Viotti
29cf4c1e89
Don't chop SSH key
2015-06-11 08:08:45 -04:00
Juan Cruz Viotti
ef33156de7
Implement config command
2015-06-10 12:34:42 -04:00
Juan Cruz Viotti
6d8fd6e547
Merge pull request #66 from resin-io/feature/device-init-has-app
...
Check that the passed application exists before asking to choose device
2015-06-09 08:28:10 -04:00
Juan Cruz Viotti
bab90a8bf2
Merge pull request #65 from resin-io/fix/app-rm-help
...
Fix app commands order of definition. Closes #62 .
2015-06-08 12:44:57 -04:00
Juan Cruz Viotti
43f0288c6c
Check that the passed application exists before asking to choose device
2015-06-08 12:31:17 -04:00
Juan Cruz Viotti
47e6371e2e
Merge pull request #64 from resin-io/feature/config-inject
...
Implement config injection
2015-06-05 12:06:54 -04:00
Juan Cruz Viotti
5e400ed335
Fix app commands order of definition. Closes #62 .
...
This caused `resin help app rm` erroneusly show the help page for `resin app`.
2015-06-04 11:54:15 -04:00
Juan Cruz Viotti
2bfeb7f42c
Associate a device before first boot
2015-06-04 10:10:15 -04:00
Juan Cruz Viotti
37e0f12f89
Merge pull request #57 from resin-io/feature/associate-confirmation
...
Ask for confirmation on app associate command
2015-06-04 08:22:01 -04:00
Juan Cruz Viotti
fdd0e4a966
Implement config injection
2015-06-04 08:06:37 -04:00
Juan Cruz Viotti
e9efb78280
Merge pull request #56 from resin-io/feature/login-feedback
...
Display feedback message after login
2015-06-03 08:46:18 -04:00
Juan Cruz Viotti
0424d7b640
Merge pull request #60 from resin-io/fix/login-browser-session
...
Open dashboardUrl instead of remoteUrl in auth login
2015-06-03 08:45:00 -04:00
Juan Cruz Viotti
2b80c7c91f
Merge pull request #59 from resin-io/feature/app-create-feedback
...
Print feedback message after app create
2015-06-02 17:08:44 -04:00
Juan Cruz Viotti
1ed9ae7d60
Open dashboardUrl instead of remoteUrl in auth login
2015-06-02 13:21:59 -04:00
Juan Cruz Viotti
329bf25dbd
Print feedback message after app create
2015-06-02 13:04:08 -04:00
Juan Cruz Viotti
e18ffba183
Quiet console.info if stdout is being redirected
...
We use `console.info()` for feedback messages.
2015-06-02 12:36:17 -04:00
Juan Cruz Viotti
ae3f0b429d
Ask for confirmacion on app associate command
2015-06-02 12:32:35 -04:00
Juan Cruz Viotti
34736c4e9b
Display feedback message after login
2015-06-02 11:57:52 -04:00
Juan Cruz Viotti
054d5e4879
Add per device environment variable support
2015-05-28 12:32:08 -04:00
Juan Cruz Viotti
b04ed43bed
Merge pull request #54 from resin-io/fix/device-await-help
...
Fix device await help not showing up
2015-05-28 08:46:42 -04:00
Juan Cruz Viotti
c2bbb952c5
Fix device await help not showing up
2015-05-27 15:14:36 -04:00
Juan Cruz Viotti
68ef069e6a
Accept names instead of ids in example commands
2015-05-21 11:58:15 -04:00
Juan Cruz Viotti
78af9bbb10
Expose logs as cli.actions.logs instead of cli.actions.logs.logs
2015-05-18 09:37:27 -04:00
Juan Cruz Viotti
db58e9986c
Return devices array to the done callback in device list command
...
Useful when using the CLI programatically.
2015-05-14 11:43:41 -03:00
Juan Cruz Viotti
e7e8ec296c
Make use of selfupdate
2015-05-14 11:32:18 -03:00
Juan Cruz Viotti
9bb04f43a8
Fix callback not being called on success in os download command
2015-05-11 14:23:34 -03:00
Juan Cruz Viotti
9b0c08bd46
Don't umount in os install as it's already handled in Resin Image
2015-05-11 13:10:06 -03:00
Juan Cruz Viotti
d8ce6648e2
Handle device unmounting in os install command
2015-05-11 10:04:05 -03:00
Juan Cruz Viotti
f3e193be0f
Make login command behave non interactively if a token is passed as an argument
2015-05-11 09:42:25 -03:00
Juan Cruz Viotti
656f3e5cd9
Make use of resin-image to remove image writing logic from the CLI
2015-05-08 14:26:04 -03:00
Juan Cruz Viotti
741acfbba3
Merge pull request #41 from resin-io/feature/command-run
...
Make use of capitano.run() to run subcommands
2015-05-08 14:23:37 -03:00
Juan Cruz Viotti
08648894e3
Merge pull request #40 from resin-io/feature/device-await
...
Implement device await command
2015-05-06 11:18:42 -03:00
Juan Cruz Viotti
4c5d5697bc
Implement device await command
2015-05-06 11:14:08 -03:00
Juan Cruz Viotti
c758a5b9ea
Make use of capitano.run() to run subcommands
2015-05-05 17:34:24 -03:00
Juan Cruz Viotti
cd3245a631
Handle device unmounting in os install command
2015-05-02 10:34:11 -04:00
Juan Cruz Viotti
7f7ca13001
Implement --version/-v global options. Closes #35
2015-04-30 11:56:15 -04:00
Juan Cruz Viotti
fab85b381a
Throw a nice error if note contents are missing
2015-04-29 14:39:46 -04:00
Juan Cruz Viotti
193cedae26
Check that an application exists before asking it's type. Closes #30
2015-04-28 09:18:21 -04:00
Juan Cruz Viotti
9bb51d7146
Make devices command list all devices if no application option. Closes #17
2015-04-27 11:21:30 -04:00
Juan Cruz Viotti
84900aa588
Remove outdated uuid checking help message
2015-04-27 10:51:26 -04:00
Juan Cruz Viotti
9a3c844336
Print logs correctly, as they recently got a message field added
2015-04-27 09:30:57 -04:00
Juan Cruz Viotti
ea5b521262
Merge pull request #26 from resin-io/fix/device-init-temp-output
...
Fix temporary os download output option in device init
2015-04-21 09:06:11 -04:00
Juan Cruz Viotti
3bc71577b5
Fix temporary os download output option in device init
2015-04-21 08:37:40 -04:00
Juan Cruz Viotti
0fb24162fc
Merge pull request #24 from resin-io/fix/update
...
Fix logical issue in update command
2015-04-20 14:14:33 -04:00
Juan Cruz Viotti
8041905144
Remove duplicated whoami command
2015-04-20 12:46:43 -04:00
Juan Cruz Viotti
37d96e238d
Fix logical issue in update command
2015-04-20 12:42:31 -04:00
Juan Cruz Viotti
7bd8922a4e
Upgrade Resin VCS to v1.2.0 and make use of vcs.getApplicationName()
2015-04-20 11:41:26 -04:00
Juan Cruz Viotti
f7256e9927
Make device init command take an application name instead of id
2015-04-20 09:13:15 -04:00
Juan Cruz Viotti
85444a5a6a
Make os download command accept an application name instead of id
2015-04-20 09:06:40 -04:00
Juan Cruz Viotti
3c2a440553
Make "example clone" clone to a new directory
2015-04-20 08:56:10 -04:00
Juan Cruz Viotti
2b4394f3ce
Merge pull request #21 from resin-io/fix/progress-context
...
Bind progress update function to avoid context issues
2015-04-17 14:45:17 -04:00
Juan Cruz Viotti
caa4fcf754
Bind progress update function to avoid context issues
2015-04-17 10:11:02 -04:00
Juan Cruz Viotti
a6dc155028
Add lodash dependency to lib/elevate.coffee
...
Depedency was missing and thus elevating functions threw errors.
2015-04-17 09:22:21 -04:00
Juan Cruz Viotti
a96ab487ba
Fix bug with login with token
...
The commit was merged from an older branch, in which settings was
still part of the SDK.
2015-04-08 08:25:27 -04:00
Juan Cruz Viotti
cd28c985ce
Merge pull request #9 from resin-io/feature/version
...
Remove bundled node version from version command
2015-04-07 10:56:18 -04:00
Juan Cruz Viotti
727af42ad4
Merge pull request #8 from resin-io/feature/login-with-token
...
Login with token
2015-04-07 08:12:12 -04:00
Juan Cruz Viotti
4a7d3d5945
Mock local Raspberry Pi bundle
2015-04-07 08:10:26 -04:00
Juan Cruz Viotti
03f05305cf
Fix tiny text issue
2015-04-07 08:07:06 -04:00
Juan Cruz Viotti
8533a4a303
Remove bundled node version from version command
2015-04-06 17:18:00 -04:00
Juan Cruz Viotti
064afd6705
Fetch TOKEN_URL from the resin sdk
2015-04-06 17:05:13 -04:00
Juan Cruz Viotti
978ff91f87
Remove tab query from preferences token url constant
...
Tab queries were removed from the web frontend.
2015-04-06 17:04:43 -04:00
Juan Cruz Viotti
1cd0f02db5
Attempt to open a browser to the token location automatically
2015-04-06 17:04:03 -04:00
Juan Cruz Viotti
77695bb505
Allow login with token
2015-04-06 17:02:53 -04:00
Juan Cruz Viotti
4e4428fdbb
Move windosu elevate logic to another module
2015-04-06 16:49:53 -04:00
Juan Cruz Viotti
2a4ba895e5
Elevate privileges of update command if necessary
2015-04-01 12:51:04 -04:00
Juan Cruz Viotti
782c92885d
Use child_process to trigger self update
...
Using the NPM API led to weird issues.
See https://github.com/npm/npm/issues/7723 .
2015-03-24 08:44:02 -04:00
Juan Cruz Viotti
a14dfa6cf1
Fix long line lint warning
2015-03-23 18:32:28 -04:00
Juan Cruz Viotti
f3b6f9d117
Add missing example to device init
2015-03-23 08:25:45 -04:00
Juan Cruz Viotti
df9c4ce2fd
Reference applications and devices by name
2015-03-23 08:17:55 -04:00
Juan Cruz Viotti
cd8bb7882e
Reimplement whoami command
2015-03-19 15:57:43 -04:00
Juan Cruz Viotti
a524bffaa2
Integrate with SDK v1.0.0
2015-03-19 11:45:07 -04:00
Juan Cruz Viotti
fa258a84cc
Show a spinner if no progress state in os download command
2015-03-16 11:45:17 -04:00
Juan Cruz Viotti
5efa7309be
Fix bug in device init
2015-03-16 11:06:44 -04:00
Juan Cruz Viotti
80e0f20301
Make device init attempt to get application id from current directory
2015-03-12 12:03:59 -04:00
Juan Cruz Viotti
8410a709c9
Make use of resin-vcs instead of using gitwrap directly
2015-03-12 11:24:36 -04:00
Juan Cruz Viotti
53197856ab
Extend device init help message
2015-03-11 09:05:20 -04:00
Juan Cruz Viotti
cb5bb69b47
Get rid of gitCli in favor of gitwrap
2015-03-11 09:03:13 -04:00
Juan Cruz Viotti
4bfe52d73b
Require CLI to be updated when running os install
2015-03-11 08:49:26 -04:00
Juan Cruz Viotti
9d8228e1c6
Add ENOGIT specific error message
2015-03-10 13:56:55 -04:00
Juan Cruz Viotti
8fbde4c452
Make use of gitwrap
2015-03-10 10:03:49 -04:00
Juan Cruz Viotti
0cc1765a1e
Regenerate documentation
2015-03-09 19:49:46 -04:00
Juan Cruz Viotti
f0346b1fd0
Allow to interactively configure network for os download
2015-03-09 19:42:43 -04:00
Juan Cruz Viotti
1bb798a8b8
Get rid of automatic cache name generation logic
2015-03-09 12:38:37 -04:00
Juan Cruz Viotti
6ba97cd961
Automate resin init command
2015-03-09 09:14:39 -04:00
Juan Cruz Viotti
9c7b36e1d8
Improve resin update help section
2015-03-04 14:47:46 -04:00
Juan Cruz Viotti
cefa9d1e31
Fix bug with update command
2015-03-04 14:46:34 -04:00
Juan Cruz Viotti
06020c0344
Implement self update functionality and notification
2015-03-04 14:40:40 -04:00
Juan Cruz Viotti
9038b76d73
Implement resin update command
2015-03-04 14:03:08 -04:00
Juan Cruz Viotti
a1e6c6cda5
Stop bundling NodeJS in the package
2015-03-04 12:16:35 -04:00
Juan Cruz Viotti
4aefb15c70
Prevent resin-write infinite loop
2015-03-03 12:39:41 -04:00
Juan Cruz Viotti
b2444feae9
Make use of process.argv[0] instead of hardcoding "node" to windosu
2015-03-03 11:32:56 -04:00
Juan Cruz Viotti
6a83a537c7
Implement basic documentation generation mechanism
2015-03-03 11:32:24 -04:00
Juan Cruz Viotti
78d11bffd0
Document --quiet option for plugin install
2015-03-02 10:41:38 -04:00
Juan Cruz Viotti
572fe29fe6
Implement plugin update command
2015-03-02 10:41:08 -04:00
Juan Cruz Viotti
50ff40f6f3
Log warning if bundle not found
2015-03-02 09:03:11 -04:00
Juan Cruz Viotti
01d2edb819
Precompile CoffeeScript files
2015-02-26 11:47:34 -04:00
Juan Cruz Viotti
2085e71f33
Remove unecessary double quotes
2015-02-26 11:38:48 -04:00
Juan Cruz Viotti
980e55afd3
Simplify usage help string
2015-02-26 11:15:15 -04:00
Juan Cruz Viotti
d520918071
Multi arch builds
2015-02-26 10:12:25 -04:00
Juan Cruz Viotti
9c98adb712
Prevent writing accidentally to system drives
2015-02-25 11:12:58 -04:00
Juan Cruz Viotti
91a2453ebb
Make use of new nplug version
2015-02-24 13:36:10 -04:00
Juan Cruz Viotti
bec264d936
Add trailing dash to plugin list prefix
2015-02-12 13:22:28 -04:00
Juan Cruz Viotti
2ea628bc4a
Add plugins npm routines TODO
2015-02-12 13:17:20 -04:00
Juan Cruz Viotti
7edcf9925e
Silence plugin install command
2015-02-12 13:16:21 -04:00
Juan Cruz Viotti
5e69995bb0
Refactor npm related logic to plugins
2015-02-12 13:10:45 -04:00
Juan Cruz Viotti
6c70f64f6a
Log installed plugins
2015-02-12 12:54:59 -04:00
Juan Cruz Viotti
3445388db3
Implement plugin rm command
2015-02-12 12:50:40 -04:00
Juan Cruz Viotti
82ac558d7f
Implement plugin install command
2015-02-12 12:23:01 -04:00
Juan Cruz Viotti
7dd34f4a0e
Fix option parameter name issue
2015-02-12 10:20:00 -04:00
Juan Cruz Viotti
74b1092e9a
Implement plugins command
2015-02-12 09:41:25 -04:00
Juan Cruz Viotti
94d462835c
Remove hashbang from lib/resin.js
2015-02-11 15:34:37 -04:00
Juan Cruz Viotti
7c836132ad
Add node version to version command output
2015-02-11 15:30:49 -04:00
Juan Cruz Viotti
9ce8193c1f
Call application with bundled nodejs binary
2015-02-11 13:13:12 -04:00
Juan Cruz Viotti
d97a4d9d49
Use visuals.widgets.select for app create command
2015-02-11 10:07:53 -04:00
Juan Cruz Viotti
a6a3eeae6d
Make use of resin.models.device.getSupportedDeviceTypes() asynchronously
2015-02-11 09:53:48 -04:00
Juan Cruz Viotti
65729012b6
Fix logs display
2015-02-10 15:43:39 -04:00
Juan Cruz Viotti
d3f91797bf
Fix help command now that getMatchCommand() is async
2015-02-10 14:44:39 -04:00
Juan Cruz Viotti
eeee1ce8e1
Implement in place progress bar
2015-02-10 12:55:18 -04:00
Juan Cruz Viotti
6739b7fbca
Make use of async in app.coffee
2015-02-10 11:55:30 -04:00
Juan Cruz Viotti
8d99526a96
Refactor plugins logic into a new file
2015-02-10 11:46:22 -04:00
Juan Cruz Viotti
f712064ab4
Move tests to tests/ and flatten errors/ module directory
2015-02-10 11:38:19 -04:00
Juan Cruz Viotti
65fbe12f22
Make use of new Capitano stdin support to get rid of helpers/
2015-02-10 11:32:06 -04:00
Juan Cruz Viotti
8275275a05
Make login command accept options instead of colon separated credentials
...
For consistency
2015-02-09 11:48:13 -04:00
Juan Cruz Viotti
4d49655ab2
Enable registering programatically
2015-02-09 11:43:10 -04:00
Juan Cruz Viotti
2143818291
Remove unneeded dependency
2015-02-09 10:02:09 -04:00
Juan Cruz Viotti
d2f319c725
Move chop functionality to Resin CLI Visuals
2015-02-06 11:22:11 -04:00
Juan Cruz Viotti
e769fdc205
Prevent linter long line warning
2015-02-06 11:11:38 -04:00
Juan Cruz Viotti
ca961d04c5
Pass a ProgressState instance to bar.tick() directly
2015-02-06 08:21:32 -04:00
Juan Cruz Viotti
3005a91658
Write device init help page
2015-02-05 09:56:22 -04:00
Juan Cruz Viotti
8adf943e51
Make use of get-stdin
2015-02-05 09:10:10 -04:00
Juan Cruz Viotti
0dba133b0a
Fix comment spacing
2015-02-05 08:56:52 -04:00
Juan Cruz Viotti
780893b411
Make os download modify options.output directly
2015-02-05 08:53:05 -04:00
Juan Cruz Viotti
bcbb7d8e96
Upgrade to Capitano v1.3.1 and remove unneeded try/catch clause
...
Capitano v1.3.1 introduces support for automatically catching action
sync thrown errors
2015-02-05 08:49:57 -04:00
Juan Cruz Viotti
e6081238a1
Implement new device init command
2015-02-04 15:17:51 -04:00
Juan Cruz Viotti
0a7b83308a
Add TODO on actions/keys about extracting ssh key chop
2015-02-04 15:17:51 -04:00
Juan Cruz Viotti
33b66effc2
Make use of new Resin CLI visuals patterns
2015-02-04 15:17:51 -04:00
Juan Cruz Viotti
3ee228c862
Move os network params options to command-options
2015-02-04 15:17:51 -04:00
Juan Cruz Viotti
3f51739e2e
Send outputFile to done() in os.download
2015-02-04 15:17:50 -04:00
Juan Cruz Viotti
9f4ae4ac3f
Rename current device init to os download
2015-02-04 15:17:50 -04:00
Juan Cruz Viotti
a4a8c4e61a
Simplify os download a bit with _.unary
2015-02-04 15:08:38 -04:00
Juan Cruz Viotti
e7823e2707
Make use of SDK ProgressState enhancement to simplify os download
2015-02-04 15:06:07 -04:00
Juan Cruz Viotti
531a48a158
Fix generateCacheName error not being caught
2015-02-03 13:51:33 -04:00
Juan Cruz Viotti
6ce0fdc4ab
Make use of diskio
2015-02-02 12:25:22 -04:00
Juan Cruz Viotti
1a595412d5
Move unused diskpart script
2015-02-02 08:23:30 -04:00
Juan Cruz Viotti
fd079b5794
Make use of diskpart npm module
2015-01-30 15:41:14 -04:00
Juan Cruz Viotti
e9db8c09e8
Fix stdout argument issue
2015-01-30 14:19:36 -04:00
Juan Cruz Viotti
9e8e402788
Implement diskpart module
2015-01-30 14:16:24 -04:00
Juan Cruz Viotti
c7c7d55338
Allow to choose a device interactively from device init
2015-01-30 12:55:56 -04:00
Juan Cruz Viotti
654ab26609
Make use of drivelist 1.1.0
2015-01-30 11:48:15 -04:00
Juan Cruz Viotti
fc6dda5d22
Make use of published drivelist
2015-01-30 11:38:46 -04:00
Juan Cruz Viotti
fd7d9858a9
Fix switch case
2015-01-30 10:37:23 -04:00
Juan Cruz Viotti
ac78a8bc02
Implement linux.list()
2015-01-30 10:30:28 -04:00
Juan Cruz Viotti
a220bc87ad
Include USB Card reader in OSX test
2015-01-30 10:02:07 -04:00
Juan Cruz Viotti
0b1d83a70b
Rename list spec stdout variable to drives
2015-01-30 09:59:28 -04:00
Juan Cruz Viotti
7beca02eda
Mention drives command in device init help
2015-01-30 09:58:54 -04:00
Juan Cruz Viotti
80079d00a5
Implement win32.list()
2015-01-30 09:52:41 -04:00
Juan Cruz Viotti
1ce7178aa3
Test drive.osx.list()
2015-01-30 09:23:56 -04:00
Juan Cruz Viotti
ad0be5f63c
Refactor drive module
2015-01-30 09:16:55 -04:00
Juan Cruz Viotti
fd1e632b50
List drives in OS X
2015-01-30 08:45:38 -04:00
Juan Cruz Viotti
d284e92520
Fix broken test
2015-01-29 15:28:33 -04:00
Juan Cruz Viotti
03c6c72df6
Integrate new progress bar
2015-01-29 14:59:57 -04:00
Juan Cruz Viotti
2d5549873a
Prettier progress bar
2015-01-29 14:06:38 -04:00
Juan Cruz Viotti
35633f3612
Math.floor() percentage
2015-01-29 14:05:10 -04:00
Juan Cruz Viotti
2b992ec233
Simple progress bar approach
2015-01-29 14:01:21 -04:00
Juan Cruz Viotti
3e938f7808
Remove done message at the end of windosu execution
2015-01-29 12:29:35 -04:00
Juan Cruz Viotti
38139ed169
Simplify conditional
2015-01-29 12:27:37 -04:00
Juan Cruz Viotti
f767f637f7
Fix conditional
2015-01-29 12:23:30 -04:00
Juan Cruz Viotti
8437757ca8
Prevent infinite loop
2015-01-29 12:21:56 -04:00
Juan Cruz Viotti
9069b07d4a
Integrate windosu
2015-01-29 12:04:48 -04:00
Juan Cruz Viotti
7949296cec
Extend EACCESS, EPERM errors with OS specific descriptions
2015-01-29 10:39:12 -04:00
Juan Cruz Viotti
e9e02e3272
Handle ENOENT windows errors
2015-01-28 15:51:36 -04:00
Juan Cruz Viotti
00623833cc
Extend errors.handle to catch EPERM as well
2015-01-28 15:45:30 -04:00
Juan Cruz Viotti
d75a19fc6e
Remove debugging logging
2015-01-28 15:40:00 -04:00
Juan Cruz Viotti
0d06524162
Surround diskpart script in double quotes
2015-01-28 15:38:39 -04:00
Juan Cruz Viotti
95d8d2fe8f
Add missing path dependency
2015-01-28 15:30:08 -04:00
Juan Cruz Viotti
9de4a3c556
Some fixes and refactoring
2015-01-28 15:26:56 -04:00
Juan Cruz Viotti
96d221fbcf
Catch createWriteStream errors
2015-01-28 15:13:43 -04:00
Juan Cruz Viotti
8bfdebbfbb
Fix drive dependencies
2015-01-28 14:53:34 -04:00
Juan Cruz Viotti
320981770e
Erase MBR before rescanning
2015-01-28 14:51:11 -04:00
Juan Cruz Viotti
8b0ce36955
Use diskpart to rescan the drives
2015-01-28 14:41:53 -04:00
Juan Cruz Viotti
dcebbc0044
Make use of a 512 block aligner
2015-01-28 10:16:01 -04:00
Juan Cruz Viotti
db3d4292f4
Add Windows support to device init command
2015-01-28 08:33:50 -04:00
Juan Cruz Viotti
0e4245523b
Fix errors/ test suite sudden failure issue
2015-01-23 14:58:57 -04:00
Juan Cruz Viotti
4103a4195a
Move changeProjectDirectory outside the nested code
2015-01-23 13:54:30 -04:00
Juan Cruz Viotti
ff0b513188
Make use of nplugm.load
2015-01-23 13:24:57 -04:00
Juan Cruz Viotti
ff9558ab32
Simplify plugin loading routing with getPluginsByGlob()
2015-01-23 11:16:31 -04:00
Juan Cruz Viotti
af9ae6579c
Move plugin module to nplugm
2015-01-23 10:23:47 -04:00
Juan Cruz Viotti
155a6775e4
Make use of device_type directly
2015-01-22 13:20:20 -04:00
Juan Cruz Viotti
a275de436d
Make use of simplified table widget
2015-01-22 13:06:02 -04:00
Juan Cruz Viotti
092a246b3d
Fix Windows path issues
2015-01-21 12:51:50 -04:00
Juan Cruz Viotti
50325d0f8f
Make use of resin-cli-visuals and get rid of local ui module
2015-01-21 09:50:19 -04:00
Juan Cruz Viotti
2c90d1176c
Reorder device init declaration to prevent help conflicts
2015-01-20 15:52:13 -04:00
Juan Cruz Viotti
9cb84ee612
Allow to quiet download progress bar
2015-01-20 15:41:14 -04:00
Juan Cruz Viotti
aa6680d57a
Fix device init help OS X command
2015-01-20 15:36:01 -04:00
Juan Cruz Viotti
aa4d7a408a
Implement device init command (for UNIX only)
2015-01-20 15:34:47 -04:00
Juan Cruz Viotti
f04f6f8702
Move ProgressBar to ui.widgets
2015-01-20 15:10:18 -04:00
Juan Cruz Viotti
da02857a6e
Handle EACCES errors
2015-01-20 15:09:26 -04:00
Juan Cruz Viotti
af7a40bd68
Easy shortcut for one command plugins
2015-01-16 10:41:22 -03:00
Juan Cruz Viotti
a6660ad4ec
Improve plugin architecture importing technique
2015-01-16 10:38:19 -03:00
Juan Cruz Viotti
d49677581b
Make use of Capitano permissions feature
2015-01-16 09:34:59 -03:00
Juan Cruz Viotti
5abc4e550f
Move command declarations next to their definitions
2015-01-15 14:18:39 -03:00
Juan Cruz Viotti
f94be29047
Remove unused error.handleCallback function
2015-01-15 11:39:18 -03:00
Juan Cruz Viotti
a6282d2b28
Get rid of log module
...
Didn't provide that much value
2015-01-15 11:36:43 -03:00
Juan Cruz Viotti
9a3b048b9f
Move help facade to help actions module
2015-01-15 11:18:34 -03:00
Juan Cruz Viotti
72d08ffbbf
Move version action to actions/
2015-01-15 11:16:07 -03:00
Juan Cruz Viotti
c4da5f0008
Remove obsolete comment
2015-01-15 11:11:10 -03:00
Juan Cruz Viotti
3e055b32d2
Update Capitano to v1.2.0 and make use of done callback feature
2015-01-15 10:47:17 -03:00
Juan Cruz Viotti
2a8f1f1dc2
Implement plugin support
2015-01-14 15:42:05 -03:00
Juan Cruz Viotti
043a34cc7c
Decouple permissions from http mocks and fixtures
2015-01-13 08:51:02 -03:00
Juan Cruz Viotti
975e133d5a
Refactor to not use ConnectionParams
2015-01-12 09:12:30 -03:00
Juan Cruz Viotti
243a05a4e2
Prevent note callback from being called twice
2015-01-09 15:07:50 -03:00
Juan Cruz Viotti
5a3254dc5e
Get rid of cache module
2015-01-09 13:41:32 -03:00
Juan Cruz Viotti
2b5c1a664e
Remove unused isDeviceUUIDValid helper function
2015-01-09 13:28:27 -03:00
Juan Cruz Viotti
0753bd1fe9
Don't compute device type slug as the logic is implicit on the SDK
2015-01-09 13:16:10 -03:00
Juan Cruz Viotti
f36e13658f
Remove credentials filtering when logging in after registering
2015-01-09 13:06:17 -03:00
Juan Cruz Viotti
cdeaab18c8
Remove key trimming logic as it was moved to the SDK
2015-01-09 12:54:35 -03:00
Juan Cruz Viotti
05812ba442
Implement and make use of errors.handleCallback()
...
This function is introduced to remove some duplication
2015-01-09 12:22:18 -03:00
Juan Cruz Viotti
41fcedb171
Remove TODO that has been moved to the SDK
2015-01-09 10:46:35 -03:00
Juan Cruz Viotti
8c02e88ab5
Add logout error handler
2015-01-09 10:38:06 -03:00
Juan Cruz Viotti
807bc2f047
Make use of new SDK logs feature
2015-01-09 10:34:26 -03:00
Juan Cruz Viotti
bf7430d7fd
Move logs logic to a nested logs module
2015-01-09 09:42:46 -03:00
Juan Cruz Viotti
5ec4abc710
Make deviceOption required
2015-01-08 13:30:15 -03:00
Juan Cruz Viotti
b5701f53f5
Make use of isSystemVariable from Resin SDK
2015-01-08 13:15:40 -03:00
Juan Cruz Viotti
d2b0772673
Remove duplication by relying on Capitano's new required option feature
2015-01-08 12:11:10 -03:00
Juan Cruz Viotti
dc75481880
Improve TODO comment for clarity sake
2015-01-08 11:01:47 -03:00
Juan Cruz Viotti
2f1275d617
Remove unneeded dependency
2015-01-08 11:01:04 -03:00
Juan Cruz Viotti
0452916a87
Integrate with connection.ConnectionParams
2015-01-08 10:56:46 -03:00
Juan Cruz Viotti
f000509995
Get rid of utils/mock
2015-01-08 09:43:50 -03:00
Juan Cruz Viotti
12f46be691
Partially get rid of nested sdk
2015-01-08 09:39:38 -03:00
Juan Cruz Viotti
8ac36ced4d
Decouple resin sdk from it's surroundings
2015-01-06 15:02:03 -03:00
Juan Cruz Viotti
07c57d335b
Refactor table to get rid of map feature
2015-01-06 14:12:11 -03:00
Juan Cruz Viotti
57c86f920c
Stop using table map feature
2015-01-06 14:07:35 -03:00
Juan Cruz Viotti
19e151e521
Simplify conditional
2015-01-06 13:57:11 -03:00
Juan Cruz Viotti
af98a89e51
Make errors.handle handle EISDIR and ENOENT
2015-01-06 13:54:40 -03:00
Juan Cruz Viotti
e9caca8c24
Rename error code to error exit code
2015-01-06 13:46:31 -03:00
Juan Cruz Viotti
ac00a96728
Move device manipulation logic to device model
2015-01-06 13:35:38 -03:00
Juan Cruz Viotti
be2b556d91
Move device display name logic to application model
2015-01-06 13:24:11 -03:00
Juan Cruz Viotti
c311738dd1
Move application field manipulations to the model
2015-01-06 13:22:40 -03:00
Juan Cruz Viotti
45a4f8eda0
Remove unnecessary object keys deletion
2015-01-06 13:15:40 -03:00
Juan Cruz Viotti
af8d1e4517
Implement devices supported command
2014-12-24 12:50:30 -04:00
Juan Cruz Viotti
14f047da53
Remove obsolete comment
2014-12-24 12:44:19 -04:00
Juan Cruz Viotti
3f9270cbb9
Implement note command
2014-12-24 12:40:40 -04:00
Juan Cruz Viotti
16ddd8ccb6
Implement interactive signup form
2014-12-24 11:14:30 -04:00
Juan Cruz Viotti
33e209def5
Add register function to resin/auth
2014-12-24 10:59:25 -04:00
Juan Cruz Viotti
0983506efb
Fix bug in device command
2014-12-23 09:54:34 -04:00
Juan Cruz Viotti
aefb809c11
Disable colour highlighting
2014-12-23 09:21:11 -04:00
Juan Cruz Viotti
4ad7fd0132
Make devices command application option based
2014-12-23 08:54:15 -04:00
Juan Cruz Viotti
634653609e
Remove IP Address from devices list
...
Some devices have a very long set of ips.
2014-12-23 08:44:13 -04:00
Juan Cruz Viotti
8d08affcd8
Move parseCredentials() to helpers
2014-12-22 15:48:11 -04:00
Juan Cruz Viotti
68a6da9ffe
Make resin/server private
2014-12-22 15:42:39 -04:00
Juan Cruz Viotti
1b9c62a50f
Completely decouple client code from server module
2014-12-22 15:40:57 -04:00
Juan Cruz Viotti
aeafd23e43
Make resin/errors private
2014-12-22 15:31:11 -04:00
Juan Cruz Viotti
0746723abd
Decouple client code from resin.errors
2014-12-22 15:29:15 -04:00
Juan Cruz Viotti
da099e876d
Use internal errors module in app.coffee
2014-12-22 15:28:11 -04:00
Juan Cruz Viotti
5578b7edab
Make more obvious that helpers is private
2014-12-22 15:26:57 -04:00
Juan Cruz Viotti
212c06e5a2
Decouple client code from server by creating key model
2014-12-22 15:18:47 -04:00
Juan Cruz Viotti
6cb8d4e466
Remove almost empty error spec
2014-12-22 15:03:47 -04:00
Juan Cruz Viotti
a6b3ca1442
Mix device module with device model
2014-12-22 15:02:52 -04:00
Juan Cruz Viotti
cda24c9e1b
Move os.generateCacheName outside Resin SDK
2014-12-22 14:50:54 -04:00
Juan Cruz Viotti
8c6db6608d
Remove os/windows module for now
2014-12-22 14:47:30 -04:00
Juan Cruz Viotti
c4422a171c
Remove unused config module
2014-12-22 14:45:16 -04:00
Juan Cruz Viotti
be08a83765
Move token as an auth submodule
2014-12-22 14:43:38 -04:00
Juan Cruz Viotti
46ebb7b1fd
Move errors.handle() out of resin sdk
2014-12-22 12:47:12 -04:00
Juan Cruz Viotti
2351fa25a0
Move log out of resin sdk
2014-12-22 12:41:14 -04:00
Juan Cruz Viotti
5ae3077df9
Implement example clone command
2014-12-22 12:20:08 -04:00
Juan Cruz Viotti
082382d244
Implement examples and example <id> commands
2014-12-22 12:00:01 -04:00
Juan Cruz Viotti
0a13fb54b5
Add example JSON data
2014-12-22 11:59:47 -04:00
Juan Cruz Viotti
893d836937
Implement stdin support for key add command
2014-12-22 10:30:21 -04:00
Juan Cruz Viotti
a8678f419b
Implement "project" global option
2014-12-22 10:08:12 -04:00
Juan Cruz Viotti
eb34d957f3
Implement env rename command
2014-12-19 14:29:53 -04:00
Juan Cruz Viotti
de4c3c986e
Implement env add command
2014-12-19 14:07:53 -04:00
Juan Cruz Viotti
006f3e8aca
Implement key add command
2014-12-19 13:06:58 -04:00
Juan Cruz Viotti
ff152c987d
Implement device rename command
2014-12-19 10:05:54 -04:00
Juan Cruz Viotti
6cfe2bdc49
Make use of Capitano for command line parsing
2014-12-19 09:15:38 -04:00
Juan Cruz Viotti
b30b41d4bb
Enable auth whoami command
2014-12-12 10:25:32 -04:00
Juan Cruz Viotti
40fc9fca4f
Persist username in dataPrefix/username
2014-12-12 10:12:06 -04:00
Juan Cruz Viotti
15c73b6ed5
Document and refactor resin.vcs
2014-12-12 09:22:35 -04:00
Juan Cruz Viotti
596446835a
Reimplement app init with resin.vcs
2014-12-11 16:00:24 -04:00
Juan Cruz Viotti
8d5bba9558
Implement VCS module
2014-12-11 15:51:22 -04:00
Juan Cruz Viotti
001d7be622
Implement app init command
2014-12-11 11:37:16 -04:00
Juan Cruz Viotti
bf9f1bb9c9
Make use of conf.js instead of mantaining CliConf in the codebase
2014-12-11 11:34:36 -04:00
Juan Cruz Viotti
b9085c595d
Add empty description to glob command
2014-12-10 14:34:22 -04:00
Juan Cruz Viotti
3717831c38
Implement errors.handle() debug support
2014-12-10 14:13:42 -04:00
Juan Cruz Viotti
890d672671
Fix undefined rimraf issue after update
2014-12-10 13:54:54 -04:00
Juan Cruz Viotti
06f6b47fd1
Show help if no command is passed
2014-12-10 13:44:56 -04:00
Juan Cruz Viotti
e1e7c33752
Show help when entering an invalid command
2014-12-10 10:29:23 -04:00
Juan Cruz Viotti
f5a0c7d6e5
Upgrade old resin-platform-api to pinejs-client-js
2014-12-09 14:56:49 -04:00
Juan Cruz Viotti
be2282d70f
Remove obsolete comment
2014-12-09 14:36:54 -04:00
Juan Cruz Viotti
37797f3416
Get rid of formatLongString in favor of _.chop
2014-12-09 14:35:45 -04:00
Juan Cruz Viotti
95e3e7b8b7
Remove plugin-loader as we need to rethink the whole thing to make it Windows compatible
2014-12-09 14:35:41 -04:00
Juan Cruz Viotti
e6a982d92c
Fix resin/helpers spec os dependant paths
2014-12-09 13:46:16 -04:00
Juan Cruz Viotti
75ce68c789
Implement os/windows.parseWmicDiskDriveGet()
2014-12-09 12:47:43 -04:00
Juan Cruz Viotti
9dbf3a21cf
Add TODO about underscore string functions
2014-12-09 12:03:12 -04:00
Juan Cruz Viotti
f658fab566
Get rid of data/fsUtils
2014-12-09 09:05:37 -04:00
Juan Cruz Viotti
d62248b6d3
Remove unneeded dependency in fs-utils
2014-12-09 08:48:41 -04:00
Juan Cruz Viotti
25d2a10909
Simplify data.remove()
2014-12-09 08:47:30 -04:00
Juan Cruz Viotti
d9bfd22909
Implement data.getText and data.setText shortcut functions
2014-12-09 08:44:45 -04:00
Juan Cruz Viotti
9f713395af
Remove isDirectory duplication in plugin-loader
2014-12-08 11:12:23 -04:00
Juan Cruz Viotti
b4a49113fb
Remove helpers.isAbsolutePath() in favor of fsPlus.isAbsolute()
2014-12-08 11:09:01 -04:00
Juan Cruz Viotti
5059bcb212
Get rid of fsUtils.isDirectory
2014-12-08 11:02:38 -04:00
Juan Cruz Viotti
f75d06b302
Fix documentation examples for fsUtils.isDirectory
2014-12-08 10:54:37 -04:00
Juan Cruz Viotti
18dc048302
Add parseCredentials todo comment
2014-12-08 10:17:33 -04:00
Juan Cruz Viotti
9bfd686c5c
Increase readability of authenticate()
2014-12-08 10:16:37 -04:00
Juan Cruz Viotti
25eedd22a0
Update docs
2014-12-08 10:13:01 -04:00
Juan Cruz Viotti
c2c81220d6
Document resin/token
2014-12-08 08:48:50 -04:00
Juan Cruz Viotti
1885d319bf
Document resin/server
2014-12-08 08:48:39 -04:00
Juan Cruz Viotti
a41d55f147
Document resin/os
2014-12-08 08:48:30 -04:00
Juan Cruz Viotti
68f3d601cb
Document all models
2014-12-08 08:48:19 -04:00
Juan Cruz Viotti
ad74cbaec0
Add throw type to log.array()
2014-12-05 15:34:53 -04:00
Juan Cruz Viotti
3fbb7b5310
Document resin/models/_canvas
2014-12-05 15:33:24 -04:00
Juan Cruz Viotti
3d02acaf20
Document resin/log
2014-12-05 15:24:38 -04:00
Juan Cruz Viotti
6b3042760e
Document resin/helpers
2014-12-05 15:10:57 -04:00
Juan Cruz Viotti
88ecade342
Document resin/errors
2014-12-05 15:04:49 -04:00
Juan Cruz Viotti
98e845a90b
Document resin/device
2014-12-05 14:48:47 -04:00
Juan Cruz Viotti
8c774bace2
Document resin/data/fs-utils
2014-12-05 14:39:12 -04:00
Juan Cruz Viotti
608716a692
Document resin/data
2014-12-05 14:32:12 -04:00
Juan Cruz Viotti
725f0ce014
Document resin/data-prefix
2014-12-05 14:11:45 -04:00
Juan Cruz Viotti
842336e61b
Fix callback documentation issue
2014-12-05 14:08:51 -04:00
Juan Cruz Viotti
0c5126f0d5
Document resin/config
2014-12-05 14:05:09 -04:00
Juan Cruz Viotti
df12d5108d
Document resin/auth
2014-12-05 13:49:33 -04:00
Juan Cruz Viotti
3c3cae2096
Remove cli permissions pending test
2014-12-05 12:55:48 -04:00
Juan Cruz Viotti
ceb2a1cf63
Refactor tests
2014-12-05 12:52:31 -04:00
Juan Cruz Viotti
4b74ec7fc4
Move UI outside resin module
2014-12-05 12:00:15 -04:00
Juan Cruz Viotti
e7495fa72d
Move cli outside of resin module
2014-12-05 11:51:52 -04:00
Juan Cruz Viotti
4d0ecbdc4c
Implement device info command
2014-12-05 11:32:14 -04:00
Juan Cruz Viotti
199635b311
Fix is_web_accessible table key bug
2014-12-05 11:25:45 -04:00
Juan Cruz Viotti
0c55a4afb6
Integrate CliConf with application
2014-12-05 11:09:31 -04:00
Juan Cruz Viotti
42815ceff9
Implement Cli Conf draft
2014-12-05 10:52:43 -04:00
Juan Cruz Viotti
511e753256
Support user defined configuration file
2014-12-03 12:03:54 -04:00
Juan Cruz Viotti
1b8290ade1
Cross platform home directory
2014-12-03 09:31:36 -04:00
Juan Cruz Viotti
4143b6da49
Namespace directories inside config.directories
2014-12-03 09:26:14 -04:00
Juan Cruz Viotti
62b15cce92
Add TODO regarding quieting progress bar
2014-12-03 09:09:36 -04:00
Juan Cruz Viotti
ffdd44752a
Integrate nicer progress bar for os:download
2014-12-02 17:40:13 -04:00
Juan Cruz Viotti
2b5d95af3a
Support --output option
2014-12-02 11:53:34 -04:00
Juan Cruz Viotti
7ea4ef84b4
Make use of resin.os.generateCacheName in os action
2014-12-02 11:30:17 -04:00
Juan Cruz Viotti
b89524c43b
Implement os module
2014-12-02 11:28:49 -04:00
Juan Cruz Viotti
ccf92411fe
Implemence pace based os download
2014-12-02 11:08:22 -04:00
Juan Cruz Viotti
0b078be0f3
Allow piped server requests
2014-12-02 10:57:47 -04:00
Juan Cruz Viotti
2911caf7f8
Remove unused helpers.constructRemoteUrl
2014-12-02 09:50:59 -04:00
Juan Cruz Viotti
d3df9bff1a
Allow tracking progress of server requests
2014-12-01 13:28:57 -04:00
Juan Cruz Viotti
e52eb75ac8
Implement constructRemoteUrl helper function
2014-12-01 11:52:09 -04:00
Juan Cruz Viotti
141fa9be6d
Fix and improve connection param parsing function
2014-12-01 11:41:32 -04:00
Juan Cruz Viotti
a4db6ce572
Add download url to config
2014-12-01 11:41:14 -04:00
Juan Cruz Viotti
34e93ebe60
Add os download related options
2014-12-01 11:40:58 -04:00
Juan Cruz Viotti
551202dd4e
Implement InvalidCredentials error
2014-12-01 10:18:39 -04:00
Juan Cruz Viotti
e21c1588c9
Remove config urls abs url map
2014-12-01 10:13:35 -04:00
Juan Cruz Viotti
d3eac45955
Move all urls to config
2014-12-01 10:06:03 -04:00
Juan Cruz Viotti
db51ed9d1e
Move authenticate url to config
2014-12-01 09:52:45 -04:00
Juan Cruz Viotti
d4b189f785
Move device logs pubnub event to config
2014-12-01 09:50:18 -04:00
Juan Cruz Viotti
8f13e9bf44
Implement log tail option
2014-11-28 20:51:08 -04:00
Juan Cruz Viotti
25af7a2231
Implement logs -n/--num
2014-11-28 20:18:59 -04:00
Juan Cruz Viotti
4702e7b563
Refactor valid UUID check into helpers
2014-11-28 15:36:03 -04:00
Juan Cruz Viotti
721ef8413a
Implement logs command
2014-11-28 15:11:15 -04:00
Juan Cruz Viotti
1f4926bb6a
Implement loadPluginsDirectory
2014-11-28 11:10:01 -04:00
Juan Cruz Viotti
1d18329c29
Rename loadPackage to loadPlugin
2014-11-28 10:40:17 -04:00
Juan Cruz Viotti
8bf8cff436
Implement pluginLoader.readPluginsDirectory()
2014-11-28 10:38:34 -04:00
Juan Cruz Viotti
a62ef744bc
Implement pluginLoader.loadPackage
2014-11-27 12:14:13 -04:00
Juan Cruz Viotti
26f037d3c7
Don't use plugin loader for built in functionality
2014-11-27 11:26:59 -04:00
Juan Cruz Viotti
594a358bef
Implement and make use of plugin loader (only in preferences for now)
2014-11-27 11:22:48 -04:00
Juan Cruz Viotti
a3c8a2fb27
Handle permissions errors with errors.handle
2014-11-27 10:07:59 -04:00
Juan Cruz Viotti
5e3d973725
Implement command permissions
2014-11-27 10:06:11 -04:00
Juan Cruz Viotti
507ff16050
Option based addOption/addCommand/addResource
2014-11-27 09:28:24 -04:00
Juan Cruz Viotti
a5791d080f
Implement CLI addResource
2014-11-27 09:10:51 -04:00
Juan Cruz Viotti
86ecf5b1b6
Namespace actions with an actions object
2014-11-26 15:11:34 -04:00
Juan Cruz Viotti
7f01cae064
Implement resin/cli and decouple app.coffee from commander
2014-11-26 15:07:40 -04:00
Juan Cruz Viotti
cf4778f889
Move FsUtils inside resin/data
2014-11-26 14:22:01 -04:00
Juan Cruz Viotti
5b470f1a0a
Use resin.errors.handle in app.coffee
2014-11-26 14:17:26 -04:00
Juan Cruz Viotti
debc017ba3
Make environment variables model callback based
2014-11-26 14:11:11 -04:00
Juan Cruz Viotti
fa83019945
Make device model callback based
2014-11-26 14:05:55 -04:00
Juan Cruz Viotti
213cab0480
Make application model callback based
2014-11-26 13:54:05 -04:00
Juan Cruz Viotti
9529e6c335
Move config to resin module
2014-11-26 13:42:05 -04:00
Juan Cruz Viotti
912ebf6752
Get rid of messages module
2014-11-26 13:35:01 -04:00
Juan Cruz Viotti
3db13f6329
Move patterns to resin/ui
2014-11-26 13:29:19 -04:00
Juan Cruz Viotti
67ade4bf12
Move widgets to resin/ui module
2014-11-26 13:26:01 -04:00
Juan Cruz Viotti
ce8b11004c
Move table to widget module
2014-11-26 13:20:56 -04:00
Juan Cruz Viotti
bc11b305b2
Move device to resin module
2014-11-26 13:12:39 -04:00
Juan Cruz Viotti
ff07764b39
Move auth to resin module
2014-11-26 13:02:22 -04:00
Juan Cruz Viotti
64cb1520f6
Move data to resin module
2014-11-26 12:56:52 -04:00
Juan Cruz Viotti
1736d8a759
Move token to resin module
2014-11-26 12:42:10 -04:00
Juan Cruz Viotti
edcee1c9cf
Move log and errors to resin module
2014-11-26 12:38:02 -04:00
Juan Cruz Viotti
8b81fbdbbd
Move models to resin
2014-11-26 12:15:40 -04:00
Juan Cruz Viotti
698ddd168c
Move server to resin module
2014-11-26 12:07:10 -04:00
Juan Cruz Viotti
af00bd1faf
Improve error support
2014-11-26 11:39:58 -04:00
Juan Cruz Viotti
76e92fea22
Fix authHooks test suite
2014-11-26 09:19:02 -04:00
Juan Cruz Viotti
d4310bf970
Implement connection.parseConnectionParameters
2014-11-25 13:50:50 -04:00
Juan Cruz Viotti
ea13f7e11e
Test failIfNotLoggedIn auth hook
2014-11-25 09:37:53 -04:00
Juan Cruz Viotti
a6099b227b
Require internet connection before attempting to use server module
2014-11-25 09:02:50 -04:00
Juan Cruz Viotti
927b7bc0eb
Make use of errors.NotFound
2014-11-24 14:48:16 -04:00
Juan Cruz Viotti
86548fc3d2
Fix typo in constructor
2014-11-24 14:41:16 -04:00
Juan Cruz Viotti
5549a2bd9e
Make use of errors.handle() everywhere
2014-11-24 14:08:58 -04:00
Juan Cruz Viotti
90cb463390
Implement errors module
2014-11-24 14:08:51 -04:00
Juan Cruz Viotti
cbf7039fca
Remove unnecessary fat arrow
2014-11-24 13:40:56 -04:00
Juan Cruz Viotti
e05b149a0e
Return promise rejection to prevent Bluebird from complaining
2014-11-24 13:28:44 -04:00
Juan Cruz Viotti
1165113240
Prevent some undefined js errors
2014-11-24 13:27:15 -04:00
Juan Cruz Viotti
12fc2e3bfb
Table: Prevent map from being called if contents is undefined
2014-11-24 13:18:35 -04:00
Juan Cruz Viotti
b9d5b0fd59
Implement env:rm command
2014-11-24 13:00:36 -04:00
Juan Cruz Viotti
7988b0cbbe
Allow increasing verbosity for envs command
2014-11-24 12:43:37 -04:00
Juan Cruz Viotti
a8a78f0749
Implement envs command
2014-11-24 12:12:12 -04:00
Juan Cruz Viotti
79f7d23f35
Move /blink to config
2014-11-24 11:40:51 -04:00
Juan Cruz Viotti
f0e25589cd
Add non interactive support for app:create
2014-11-24 10:56:03 -04:00
Juan Cruz Viotti
f4ad73d2f8
Implement app:create command (interacitivy only for now)
2014-11-24 10:46:33 -04:00
Juan Cruz Viotti
f8e6894ea0
Fix bug that caused request body not being sent
2014-11-24 10:40:12 -04:00
Juan Cruz Viotti
b90b803fcb
Return device name if passing a display name to getDisplayName()
2014-11-24 09:09:39 -04:00
Juan Cruz Viotti
b9d1626fe1
Improve device module with required functionality
2014-11-24 09:03:02 -04:00
Juan Cruz Viotti
77e59cf7b9
Improve device.getSupportedDevices() to return valid slugs
2014-11-24 08:54:35 -04:00
Juan Cruz Viotti
51c6a8b4c2
Implement select widget
2014-11-24 08:45:15 -04:00
Juan Cruz Viotti
8ee2568144
Implement device.getSupportedDevices()
2014-11-24 08:25:45 -04:00
Juan Cruz Viotti
f56cd8162c
Implement device:identify command
2014-11-21 14:21:47 -04:00
Juan Cruz Viotti
982c18a900
Add UUID to table KEY_DISPLAY_MAP
2014-11-21 14:20:43 -04:00
Juan Cruz Viotti
34b0c7d783
Removeu unneeded dependency
2014-11-21 13:57:51 -04:00
Juan Cruz Viotti
29054bedf1
Implement key:rm command
2014-11-21 13:56:11 -04:00
Juan Cruz Viotti
832cbf89ff
Implement device rm command
2014-11-21 13:23:29 -04:00
Juan Cruz Viotti
a853c0418a
Add -q|--quiet global option
2014-11-21 12:20:37 -04:00
Juan Cruz Viotti
d46cf4aced
Make use of new log module everywhere
2014-11-21 11:40:37 -04:00
Juan Cruz Viotti
aa2d0e70ca
Implement log module
2014-11-21 11:37:23 -04:00
Juan Cruz Viotti
fed63fd178
Omit confirmation interactivity with -y/--yes
2014-11-21 10:44:48 -04:00
Juan Cruz Viotti
0697510f38
Refactor app:rm with async
2014-11-21 10:12:03 -04:00
Juan Cruz Viotti
37c68118db
Implement app rm command
2014-11-21 09:43:03 -04:00
Juan Cruz Viotti
1c1e8b375e
Use packageJSON directly instead of creating version action
2014-11-21 09:30:29 -04:00
Juan Cruz Viotti
b53bc060a3
Revert back to commander
2014-11-21 09:23:02 -04:00
Juan Cruz Viotti
4b20ba435d
Implement key info command
2014-11-20 14:00:39 -04:00
Juan Cruz Viotti
5bbbc93d80
Implement helpers module with formatLongString()
2014-11-20 13:53:10 -04:00
Juan Cruz Viotti
c4bb275923
Implement key list command
2014-11-20 13:03:23 -04:00
Juan Cruz Viotti
a189e21c30
Restart URL TODO
2014-11-20 12:54:43 -04:00
Juan Cruz Viotti
322fed866d
Test that server can handle a relative as well as an absolute url
2014-11-20 12:33:07 -04:00
Juan Cruz Viotti
574d612624
Implement app restart command
2014-11-20 12:24:39 -04:00
Juan Cruz Viotti
e1a63fb548
Implement version module
2014-11-20 12:13:59 -04:00
Juan Cruz Viotti
ee0fc8206f
Make use of yargs.showHelp() instead of yargs.help(), as the latter uses
...
stderr by default
2014-11-20 12:11:01 -04:00
Juan Cruz Viotti
d6c8d77ceb
Update areFunctionsEqual comment
2014-11-20 12:07:03 -04:00
Juan Cruz Viotti
91567cb5c7
Make run() print help if no matches
2014-11-20 12:05:50 -04:00
Juan Cruz Viotti
14459e1d09
Re enable all commands with new Yargs Command plugin
2014-11-20 11:57:53 -04:00
Juan Cruz Viotti
7610fe87cc
Implement Yargs Command plugin
2014-11-20 11:50:58 -04:00
Juan Cruz Viotti
f1a76db5f5
Show Is Online information in devices command
2014-11-19 15:18:15 -04:00
Juan Cruz Viotti
3f1bcf3f02
Improve devices table ordering
2014-11-19 15:01:27 -04:00
Juan Cruz Viotti
be01094463
Fix ID -> Id ordering bug
2014-11-19 14:57:30 -04:00
Juan Cruz Viotti
34346dd3d0
Refactor table utilities into tableHelpers
2014-11-19 14:25:09 -04:00
Juan Cruz Viotti
55fa8435bb
Implement devices command
2014-11-19 13:38:15 -04:00
Juan Cruz Viotti
e0032c090f
Catch errors from applicationModel.getAll()
2014-11-19 12:15:39 -04:00
Juan Cruz Viotti
7dc5915db5
Remove unused dependencies
2014-11-19 12:14:34 -04:00
Juan Cruz Viotti
9130281862
Extend table module to handle formatting
2014-11-19 12:12:08 -04:00
Juan Cruz Viotti
e0448357df
Implement table.horizontal()
2014-11-19 10:42:18 -04:00
Juan Cruz Viotti
26c69d183d
Make sure table.prepareObject() doesn't removes non empty arrays
2014-11-19 10:29:59 -04:00
Juan Cruz Viotti
e390efd46e
Implement table module
2014-11-19 10:20:36 -04:00
Juan Cruz Viotti
77d84103f6
Implement app info action
2014-11-19 09:23:40 -04:00
Juan Cruz Viotti
3015af3aeb
Fix hook arguments issue
2014-11-19 09:14:40 -04:00
Juan Cruz Viotti
98f4dc8e19
Require login before opening preferences
2014-11-19 09:05:26 -04:00
Juan Cruz Viotti
47a1e16dab
Implement preferences module
2014-11-19 08:59:17 -04:00
Juan Cruz Viotti
76194c7d46
Use getDisplayName() in apps action
2014-11-19 08:51:42 -04:00
Juan Cruz Viotti
d77e671648
Return unknown if no matches in device.getDisplayName()
2014-11-19 08:50:11 -04:00
Juan Cruz Viotti
f0e1effc05
Implement device module with getDisplayName()
2014-11-19 08:45:56 -04:00
Juan Cruz Viotti
89ec171a3d
Improve apps printing with cliff
2014-11-18 14:51:05 -04:00
Juan Cruz Viotti
8777bb9536
Make use of authHooks in actions
2014-11-18 12:37:01 -04:00
Juan Cruz Viotti
8bdd3b697a
Implement authHooks module
2014-11-18 12:36:43 -04:00
Juan Cruz Viotti
a0c743d771
Implement messages module
2014-11-18 12:36:33 -04:00
Juan Cruz Viotti
5109bba302
Move TODO to a better place
2014-11-18 12:20:37 -04:00
Juan Cruz Viotti
24f50fa5ec
Add optional interactivity to login command
2014-11-18 12:15:40 -04:00
Juan Cruz Viotti
275eed82f0
Implement widgets module
2014-11-18 12:14:48 -04:00
Juan Cruz Viotti
53c25412c3
Make auth.parseCredentials async
2014-11-18 12:11:20 -04:00
Juan Cruz Viotti
d671832b5a
Implement logout command
2014-11-18 11:48:05 -04:00
Juan Cruz Viotti
c41b28d4f0
Organise action requires close to their use in app.coffee
2014-11-18 11:40:12 -04:00
Juan Cruz Viotti
5c53829812
Implement signup command
2014-11-18 11:37:29 -04:00
Juan Cruz Viotti
612bb5e605
Basic test suite for Canvas
2014-11-18 11:15:47 -04:00
Juan Cruz Viotti
719c8d199d
Remove server facade duplication
2014-11-18 10:33:24 -04:00
Juan Cruz Viotti
eee13418b9
Delete obsolete comment
2014-11-18 10:13:58 -04:00
Juan Cruz Viotti
6afdd0e48a
Make use of new ApplicationModel in apps list action
2014-11-18 10:12:35 -04:00
Juan Cruz Viotti
e4b0f3772b
Implement ApplicationModel's getAll function
2014-11-18 10:11:18 -04:00
Juan Cruz Viotti
e18bc83285
Integrat resin-platform-api
2014-11-18 10:11:07 -04:00
Juan Cruz Viotti
6da7290d73
Use gzip by default in server
2014-11-18 10:05:38 -04:00
Juan Cruz Viotti
e6570efbaf
Simplify header assignment in server.request
2014-11-18 10:04:26 -04:00
Juan Cruz Viotti
7524a0efa8
Option based server.request()
2014-11-18 09:59:19 -04:00
Juan Cruz Viotti
9e0940063e
Use built-in url module instead of url-join
2014-11-18 09:19:20 -04:00
Juan Cruz Viotti
2fd2b702ae
Rename config.baseUrl to config.remoteUrl
2014-11-18 08:53:07 -04:00
Juan Cruz Viotti
d0cc3e54ad
Create actions submodule to clean app a bit
2014-11-18 08:41:13 -04:00
Juan Cruz Viotti
2b8313da74
Rename interface as simply app.coffee
2014-11-18 08:35:50 -04:00
Juan Cruz Viotti
c753e1b41b
Move auth outside of cli-modules
2014-11-18 08:34:40 -04:00
Juan Cruz Viotti
69dbd49444
Implement simple interface module
2014-11-17 15:48:26 -04:00
Juan Cruz Viotti
8df43575d0
Correctly reference home directory
2014-11-17 15:40:16 -04:00
Juan Cruz Viotti
3c3cb3e850
Create prefix directory when using data.prefix.set
2014-11-17 15:32:35 -04:00
Juan Cruz Viotti
11998a63cd
Make data.prefix.set() async
2014-11-17 15:20:19 -04:00
Juan Cruz Viotti
5eeb4e04ee
Remove unneeded logErrorOrContinue
2014-11-17 15:13:31 -04:00
Juan Cruz Viotti
fa47ad1201
Implement handy logErrorOrContinue
2014-11-17 14:55:36 -04:00
Juan Cruz Viotti
798a3ded61
Improve parseCredentials error message
2014-11-17 14:54:20 -04:00
Juan Cruz Viotti
b0fe4f41c1
Implement auth.parseCredentials()
2014-11-17 14:40:32 -04:00
Juan Cruz Viotti
d9bfe96cb5
Pass null as first argument for consistency
2014-11-14 15:50:29 -04:00
Juan Cruz Viotti
93b3f90e92
Remove done TODO
2014-11-14 15:49:35 -04:00
Juan Cruz Viotti
58cc0be0c9
Cleanup tests
2014-11-14 15:48:37 -04:00
Juan Cruz Viotti
8143fa3ab3
Update tests that assume saveToken returned the token as the second
...
parameter
2014-11-14 15:37:55 -04:00
Juan Cruz Viotti
b0dde8104f
Pass undefined directly on data.get when key doesn't exists
...
To prevent confusing async
2014-11-14 15:26:25 -04:00
Juan Cruz Viotti
a4a9ebf0bb
Fix undefined callback issue
2014-11-14 15:18:08 -04:00
Juan Cruz Viotti
48d39a39f8
Reorder server unit test to get more meaningful results
2014-11-14 15:04:47 -04:00
Juan Cruz Viotti
15620145eb
Make data module return undefined if key is not found
2014-11-14 14:56:52 -04:00
Juan Cruz Viotti
14bacbc4a4
Make token fs based
2014-11-14 14:28:58 -04:00
Juan Cruz Viotti
e288d3e85f
Implement data.has()
2014-11-14 13:34:04 -04:00
Juan Cruz Viotti
d83e269f20
Implement data.remove()
2014-11-14 13:21:56 -04:00
Juan Cruz Viotti
86b3489a48
Implement fsUtils.isDirectory() helper
2014-11-14 12:58:05 -04:00
Juan Cruz Viotti
aef90a18e8
Use staging instead of alpha for now
2014-11-14 11:54:03 -04:00
Juan Cruz Viotti
b47adaefa4
Make sure server response body is parsed
2014-11-14 11:53:46 -04:00
Juan Cruz Viotti
97d778634d
Implement Authorization header support in server module
2014-11-14 11:05:30 -04:00
Juan Cruz Viotti
58300acb77
Implement Auth module
2014-11-14 09:51:59 -04:00
Juan Cruz Viotti
5d6d2f0511
Convert Token module into callback based
2014-11-07 14:51:54 -04:00
Juan Cruz Viotti
3f5da39990
Add TODO for fsUtils.isValidPath()
2014-11-07 14:17:37 -04:00
Juan Cruz Viotti
cad1d5764b
Remove unused fsUtils.isFile()
2014-11-07 14:17:05 -04:00
Juan Cruz Viotti
f00691529a
Implement Data module
2014-11-07 14:15:59 -04:00
Juan Cruz Viotti
453d1bbd7b
Add colon after each module spec title
2014-11-07 12:43:10 -04:00
Juan Cruz Viotti
64e66e229f
Implement DataPrefix module
2014-11-07 12:42:02 -04:00
Juan Cruz Viotti
afe438ff82
Don't not send an error on isFile, even when the file doesn't exists
2014-11-07 12:10:18 -04:00
Juan Cruz Viotti
89bb0d0b21
Implement fsUtils module
2014-11-07 11:21:48 -04:00
Juan Cruz Viotti
41d73eaf98
Implement precarious token persistence mechanism
2014-10-31 15:19:16 -04:00
Juan Cruz Viotti
463ed6473b
Implement basic Auth module that fetches a token
2014-10-31 14:47:18 -04:00
Juan Cruz Viotti
b52d1ccb6d
Throw error if serve response status code is higher or equal than 400
2014-10-31 13:25:02 -04:00
Juan Cruz Viotti
62fc40cd4b
Implement Server module
2014-10-31 11:59:23 -04:00