afd97bd304
Add tests for action. Convert action to TypeScript. Connects-to: #1485 Change-type: patch Signed-off-by: Scott Lowe <scott@balena.io> |
||
---|---|---|
.github | ||
.versionbot | ||
automation | ||
bin | ||
doc | ||
lib | ||
patches | ||
tests | ||
typings | ||
.editorconfig | ||
.gitignore | ||
.hound.yml | ||
.prettierrc | ||
.resinci.yml | ||
.travis.yml | ||
appveyor.yml | ||
balena-completion.bash | ||
CHANGELOG.md | ||
coffeelint.json | ||
CONTRIBUTING.md | ||
gulpfile.coffee | ||
INSTALL.md | ||
LICENSE | ||
npm-shrinkwrap.json | ||
package.json | ||
README.md | ||
repo.yml | ||
TROUBLESHOOTING.md | ||
tsconfig.json | ||
tslint.json |
balena CLI
The official balena CLI tool.
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:
- Install additional packages with the command:
pacman -S git openssh rsync
- Set a Windows environment variable:
MSYS2_PATH_TYPE=inherit
- Note that a bug in the MSYS2 launch script (
msys2_shell.cmd
) makes text-based interactive CLI menus to break. Check this Github issue for a workaround.
- Install additional packages with the command:
- MSYS: select the
msys-rsync
andmsys-openssh
packages too - Git for Windows
- 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:- A string in URL format, or
- An object in the global-tunnel-ng options format (which allows more control).
- 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:
- Check our FAQ / troubleshooting document.
- Ask us a question through the balenaCloud forum.
- For bug reports or feature requests, have a look at the GitHub issues or create a new one.
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.