Commit Graph

123 Commits

Author SHA1 Message Date
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
9c98adb712 Prevent writing accidentally to system drives 2015-02-25 11:12:58 -04:00
Juan Cruz Viotti
eeee1ce8e1 Implement in place progress bar 2015-02-10 12:55:18 -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
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
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
03c6c72df6 Integrate new progress bar 2015-01-29 14:59:57 -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
9cb84ee612 Allow to quiet download progress bar 2015-01-20 15:41:14 -04:00
Juan Cruz Viotti
f04f6f8702 Move ProgressBar to ui.widgets 2015-01-20 15:10:18 -04: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
a6282d2b28 Get rid of log module
Didn't provide that much value
2015-01-15 11:36:43 -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
975e133d5a Refactor to not use ConnectionParams 2015-01-12 09:12:30 -03:00
Juan Cruz Viotti
5a3254dc5e Get rid of cache module 2015-01-09 13:41:32 -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
d2b0772673 Remove duplication by relying on Capitano's new required option feature 2015-01-08 12:11:10 -03:00
Juan Cruz Viotti
0452916a87 Integrate with connection.ConnectionParams 2015-01-08 10:56:46 -03:00
Juan Cruz Viotti
12f46be691 Partially get rid of nested sdk 2015-01-08 09:39:38 -03:00
Juan Cruz Viotti
1b9c62a50f Completely decouple client code from server module 2014-12-22 15:40:57 -04:00
Juan Cruz Viotti
cda24c9e1b Move os.generateCacheName outside Resin SDK 2014-12-22 14:50:54 -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
6cfe2bdc49 Make use of Capitano for command line parsing 2014-12-19 09:15:38 -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
0c55a4afb6 Integrate CliConf with application 2014-12-05 11:09:31 -04:00
Juan Cruz Viotti
511e753256 Support user defined configuration file 2014-12-03 12:03:54 -04:00
Juan Cruz Viotti
4143b6da49 Namespace directories inside config.directories 2014-12-03 09:26:14 -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
ccf92411fe Implemence pace based os download 2014-12-02 11:08:22 -04:00