Command-line tools
Contents
eva-shell
The primary command-line tool to manage EVA ICS nodes is eva-shell, which is either installed automatically or can be added later, by including “eva-shell” Python module in the Python virtual environment.
EVA ICS v4 eva-shell can work in both command-line and interactive mode (type “eva” without arguments to start it).
The interactive mode provides various features, like TAB-auto-completion, command repetitions (“command |T” or “command |cT”, where T is the command interval, in seconds) etc.
Installing/updating
eva-shell is not included into EVA ICS distribution any longer (but may be installed automatically). To install/update it, either edit “eva/config/python-venv” registry key, specify the desired version in “extra” section (e.g. eva-shell>=0.0.1) and rebuild the Python virtual environment (/opt/eva4/sbin/venvmgr build). Or execute:
/opt/eva4/sbin/venvmgr add eva-shell
# or
/opt/eva4/sbin/venvmgr add eva-shell==N # where N = version number
The latest eva-shell version number can be obtained from https://pypi.org/project/eva-shell/
Installing on a client machine
eva-shell can be installed on a client machine (with limited functionality):
# consider Python and pip are installed
pip install eva-shell
The remote node must have bus connection enabled via TCP/IP.
Warning
Bus connection gives full access to the node without authentication and should be enabled for trusted clients only. The target port may be additionally protected by a firewall.
Launch eva-shell executable with the bus address specified:
EVA_BUS=HOST:PORT eva
EVA Cloud Manager CLI
EVA Cloud manager CLI is a powerful command-line tool, which allows to perform certain tasks on the local node/cloud without eva-shell, such as updating nodes, performing cloud deployment etc.
The tool is used by the node process and eva-shell, but can be called directly as well.
Always installed by default, location: /opt/eva4/bin/eva-cloud-manager
Bus CLI
Various calls to the EVA ICS core and services can be performed via BUS/RT with “sbin/bus” command-line tool.
Note
EVA ICS bus RPC uses MessagePack-packed payloads. To convert YAML to MessagePack, a provided tool “bin/yml2mp” can be used.
Registry management
Command-line tools
sbin/eva-registry-cli registry command-line tool (included by default)
Python VENV management
A tool sbin/venvmgr can be used to quickly setup/manage the optional Python virtual environment (requires for Python services and certain tools).