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