Eugene Mirotin
6cf32e445a
isolate the sudo-runnable command
2017-03-27 11:43:35 +03: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
Kostas Lekkas
2d09c18d6b
Build JS
2017-03-08 23:41:55 +00:00
Tim Perry
b629ee6164
Move to preconfigured resin sdk
2017-01-25 19:33:43 +01:00
Eugene Mirotin
f17cbb1205
use the new SDK factory
2017-01-25 19:25:12 +01:00
Kostas Lekkas
3b439282ae
Regenerate JS and add header to suppress diff
2017-01-18 18:04:42 +02: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
Juan Cruz Viotti
fb1ef0df63
Promote shorter uuids in all examples
2016-01-21 10:23:40 -04:00
Juan Cruz Viotti
551a315432
Build CoffeeScript files with LICENSE additions
2016-01-11 15:58:35 -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
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
7a4f551a47
Use rindle instead of custom waitStream
2015-10-21 10:17:10 -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
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
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
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
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
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
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
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
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
fdd0e4a966
Implement config injection
2015-06-04 08:06:37 -04: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
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
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
85444a5a6a
Make os download command accept an application name instead of id
2015-04-20 09:06:40 -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
4a7d3d5945
Mock local Raspberry Pi bundle
2015-04-07 08:10:26 -04:00
Juan Cruz Viotti
4e4428fdbb
Move windosu elevate logic to another module
2015-04-06 16:49:53 -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
4bfe52d73b
Require CLI to be updated when running os install
2015-03-11 08:49:26 -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
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
a4cc106890
Commit build directory
2015-02-26 11:47:56 -04:00