The official balena CLI tool.
Go to file
Paulo Castro cc5fe60a15 Add tests for push, deploy and build commands
Change-type: patch
Signed-off-by: Paulo Castro <paulo@balena.io>
2020-01-20 13:27:52 +00:00
.github Add Scott (@srlowe) to CODEOWNERS file 2019-11-10 00:54:22 +00:00
.versionbot v11.21.7 2020-01-20 13:26:30 +02:00
automation Add --verbose and --json options to the 'devices supported' command 2019-12-27 11:54:27 +00:00
bin Fix ts-node invocation in balena-dev 2019-06-07 15:02:25 +01:00
doc Add hint about the 'jq' utility in the documentation of the --json option 2020-01-14 16:19:09 +00:00
lib Prevent file ignorer from ignoring Dockerfile (and variants), docker-compose.yml 2020-01-20 11:59:04 +01:00
patches Add npm preinstall check for npm version 6.9.0 or later 2019-10-17 15:43:21 +01:00
tests Add tests for push, deploy and build commands 2020-01-20 13:27:52 +00:00
typings Fix privilege elevation (sudo) for 'os initialize', 'join', 'leave' 2019-10-15 21:47:26 +01:00
.editorconfig fix resin local push help message and lint errors 2017-03-21 12:06:05 +03:00
.gitignore Add '.nyc_output' folder to '.gitignore' (test coverage reporting) 2020-01-14 16:19:08 +00:00
.hound.yml Change java_script to javascript in hound config 2015-10-19 14:21:10 -04:00
.prettierrc Fix prettier configuration to avoid linting errors 2018-03-05 16:02:09 +01:00
.resinci.yml Update README and INSTALL docs (review typos and some rewording) 2019-05-01 18:15:47 +01:00
.travis.yml Add 'npm run package' command 2019-07-04 20:01:07 +01:00
appveyor.yml Add 'npm run package' command 2019-07-04 20:01:07 +01:00
balena-completion.bash Remove 'signup' command 2019-06-04 17:06:46 +01:00
CHANGELOG.md v11.21.7 2020-01-20 13:26:30 +02:00
coffeelint.json Add Coffeelint support 2014-10-31 09:48:53 -04:00
CONTRIBUTING.md Update CONTRIBUTING.md regarding npm installation and some common gotchas 2020-01-14 14:47:15 +00:00
gulpfile.coffee Convert test files to Typescript 2019-08-08 16:50:50 +01:00
INSTALL.md Add Windows-specific hint to 'balena scan' output 2020-01-20 07:21:04 +07:00
LICENSE Change license to Apache 2.0 2016-01-03 23:58:51 -04:00
npm-shrinkwrap.json v11.21.7 2020-01-20 13:26:30 +02:00
package.json v11.21.7 2020-01-20 13:26:30 +02:00
README.md Add README note regarding Git for Windows console installation choice 2019-11-20 23:38:49 +00:00
repo.yml ci: add scrutinizer config 2019-09-13 15:58:52 +02:00
TROUBLESHOOTING.md Update/improve npm install instructions for Windows 2019-10-14 13:34:02 +01:00
tsconfig.json Convert test files to Typescript 2019-08-08 16:50:50 +01:00
tslint.json Add tslint config to enable consistent lint process 2019-04-24 12:48:52 +01:00

balena CLI

The official balena CLI tool.

npm version dependencies

About

The balena CLI (Command-Line Interface) allows you to interact with the balenaCloud and the balena API through a terminal window on Linux, macOS or Windows. You can also write shell scripts around it, or import its Node.js modules to use it programmatically. As an open-source project on GitHub, your contribution is also welcome!

Installation

Check the balena CLI installation instructions on GitHub.

Getting Started

Choosing a shell (command prompt/terminal)

On Windows, the standard Command Prompt (cmd.exe) and PowerShell are supported. We are aware of users also having a good experience with alternative shells, including:

  • MSYS2:
  • MSYS: select the msys-rsync and msys-openssh packages too
  • Git for Windows
    • During the installation, you will be prompted to choose between "Use MinTTY" and "Use Windows' default console window". Choose the latter, because of the same MSYS2 bug mentioned above (Git for Windows actually uses MSYS2). For a screenshot, check this comment.
  • Microsoft's Windows Subsystem for Linux (WSL). In this case, a Linux distribution like Ubuntu is installed via the Microsoft Store, and a balena CLI release for Linux is recommended. See FAQ for using balena CLI with WSL and Docker Desktop for Windows.

On macOS and Linux, the standard terminal window is supported. Optionally, bash command auto completion may be enabled by copying the balena-completion.bash file to your system's bash_completion directory: check Docker's command completion guide for system setup instructions.

Logging in

Several CLI commands require access to your balenaCloud account, for example in order to push a new release to your application. Those commands require creating a CLI login session by running:

$ balena login

Proxy support

HTTP(S) proxies can be configured through any of the following methods, in order of preference:

  • Set the BALENARC_PROXY environment variable in URL format (with protocol, host, port, and optionally basic auth).
  • Alternatively, use the balena config file (project-specific or user-level) and set the proxy setting. It can be:
  • Alternatively, set the conventional https_proxy / HTTPS_PROXY / http_proxy / HTTP_PROXY environment variable (in the same standard URL format).

To get a proxy to work with the balena ssh command, check the installation instructions.

Command reference documentation

The full CLI command reference is available on the web or by running balena help and balena help --verbose.

Support, FAQ and troubleshooting

If you come across any problems or would like to get in touch:

Contributing (including editing documentation files)

Please have a look at the CONTRIBUTING.md file for some guidance before submitting a pull request or updating documentation (because some files are automatically generated). Thank you for your help and interest!

License

The project is licensed under the Apache 2.0 License. A copy is also available in the LICENSE file in this repository.