The official balena CLI tool.
Go to file
2017-10-18 13:43:16 +02:00
.github Create ISSUE_TEMPLATE.md 2017-09-04 20:18:23 +03:00
bin Remove unused resin-write bin script 2015-08-19 11:30:48 -04:00
build Make resin config generate safe for all ResinOS versions 2017-10-18 13:43:16 +02:00
doc Make resin config generate safe for all ResinOS versions 2017-10-18 13:43:16 +02:00
extras/capitanodoc proxy support 2017-05-01 14:00:50 +03:00
lib Make resin config generate safe for all ResinOS versions 2017-10-18 13:43:16 +02:00
.editorconfig fix resin local push help message and lint errors 2017-03-21 12:06:05 +03:00
.gitignore allow prebuilding the device config and reusing it 2017-06-15 16:39:55 +03:00
.hound.yml Change java_script to javascript in hound config 2015-10-19 14:21:10 -04:00
.npmignore Support the new OS with resin-sample.ignore connection file 2017-07-27 14:01:49 +03:00
.travis.yml Move to using the catch-uncommitted npm package 2017-09-15 14:36:33 +02:00
capitanodoc.coffee improve available drives listing 2017-06-15 16:43:02 +03:00
CHANGELOG.md v6.6.13 2017-10-18 10:41:28 +00:00
coffeelint.json Add Coffeelint support 2014-10-31 09:48:53 -04:00
gulpfile.coffee build bare modules 2017-03-22 12:46:06 +03:00
LICENSE Change license to Apache 2.0 2016-01-03 23:58:51 -04:00
package.json Added a device api key parameter to the os configure command. 2017-10-18 13:43:16 +02:00
README.md Add instructions for an admin console 2017-09-22 20:10:50 +03:00
TROUBLESHOOTING.md Document the case where EACCES is thrown during login 2016-03-09 11:03:45 -04:00

Resin CLI

The official resin.io CLI tool.

npm version dependencies Gitter

Requisites

  • NodeJS (>= v4)
  • Git
  • The following executables should be correctly installed in your shell environment:
    • ssh: Any recent version of the OpenSSH ssh client (required by resin sync and resin ssh)
      • if you need ssh to work behind the proxy you also need proxytunnel installed (available as proxytunnel package for Ubuntu, for example)
    • rsync: >= 2.6.9 (required by resin sync)
Windows Support

Before installing resin-cli, you'll need a working node-gyp environment. If you don't already have one you'll see native module build errors during installation. To fix this, run npm install -g --production windows-build-tools in an administrator console (available as 'Command Prompt (Admin)' when pressing windows+x in Windows 7+).

resin sync and resin ssh have not been thoroughly tested on the standard Windows cmd.exe shell. We recommend using bash (or a similar) shell, like Bash for Windows 10 or Git for Windows.

If you still want to use cmd.exe you will have to use a package manager like MinGW or chocolatey. For MinGW the steps are:

  1. Install MinGW.
  2. Install the msys-rsync and msys-openssh packages.
  3. Add MinGW to the %PATH% if this hasn't been done by the installer already. The location where the binaries are places is usually C:\MinGW\msys\1.0\bin, but it can vary if you selected a different location in the installer.
  4. Copy your SSH keys to %homedrive%%homepath\.ssh.
  5. If you need ssh to work behind the proxy you also need to install proxytunnel

Getting Started

Install

This might require elevated privileges in some environments.

$ npm install --global --production resin-cli

Login

$ resin login

(Typically useful, but not strictly required for all commands)

Run commands

Take a look at the full command documentation at https://docs.resin.io/tools/cli/, or by running resin help.


Plugins

The Resin CLI can be extended with plugins to automate laborious tasks and overall provide a better experience when working with Resin.io. Check the plugin development tutorial to learn how to build your own!

FAQ

Where is my configuration file?

The per-user configuration file lives in $HOME/.resinrc.yml or %UserProfile%\_resinrc.yml, in Unix based operating systems and Windows respectively.

The Resin CLI also attempts to read a resinrc.yml file in the current directory, which takes precedence over the per-user configuration file.

How do I point the Resin CLI to staging?

The easiest way is to set the RESINRC_RESIN_URL=resinstaging.io environment variable.

Alternatively, you can edit your configuration file and set resinUrl: resinstaging.io to persist this setting.

How do I make the Resin CLI persist data in another directory?

The Resin CLI persists your session token, as well as cached images in $HOME/.resin or %UserProfile%\_resin.

Pointing the Resin CLI to persist data in another location is necessary in certain environments, like a server, where there is no home directory, or a device running resinOS, which erases all data after a restart.

You can accomplish this by setting RESINRC_DATA_DIRECTORY=/opt/resin or adding dataDirectory: /opt/resin to your configuration file, replacing /opt/resin with your desired directory.

Support

If you're having any problems, check our troubleshooting guide and if your problem is not addressed there, please raise an issue on GitHub and the resin.io team will be happy to help.

You can also get in touch with us in the resin.io forums.

License

The project is licensed under the Apache 2.0 license.