A CLI client for Typesafe ConductR
Project description
Command Line Interface (CLI) for Typesafe ConductR
Installation
Python 3 is required. For OS X users use brew install python3.
Install using pip
You may either install to all users:
sudo pip3 install typesafe-conductr-cli
… or, and if you’re not using brew (there’s a problem with user installs as of the time writing this), install to the current user (make sure to have ~/.local/bin in your PATH):
pip3 install --user typesafe-conductr-cli
Install as a deb package
Build a docker image for building a deb package:
docker build -t debian-distribution deb_dist/
Run built docker image:
docker run -v $(pwd):/source debian-distribution
Install built deb package:
dpkg -i deb_dist/python3-typesafe-conductr-cli_0.1-1_all.deb
Install required dependencies:
apt-get install -f
Autocomplete support
If you have installed argcomplete and want to activate Bash completion for the CLI, you have to execute the following, either transiently in your terminal session or more permanently in your .bashrc or .bash_profile:
eval "$(register-python-argcomplete conduct)"
Alternatively, if you have a Bash version 4.2 or later, you can activate global completion once:
activate-global-python-argcomplete --dest=/path/to/bash_completion.d
If you are running zsh, execute the following command to enable autocomplete:
autoload bashcompinit && autoload compinit && bashcompinit && compinit && eval "$(register-python-argcomplete conduct)"
Running tests
Execute the following command to run all defined tests:
python3 setup.py test
Releasing
CLI releases can be performed completely from the GitHub project page. Follow these steps to cut a release:
Edit typesafe_conductr_cli/__init__.py file to contain the version to be released.
Create a new release in GitHub releases page.
After CI build is finished for the tagged commit, new version will automatically be deployed to PyPi repository.
CLI Usage
conduct
Execute conduct with any of the supported sub-commands or options, e.g.
$ conduct -h
usage: conduct [-h] {version,info,services,load,run,stop,unload} ...
optional arguments:
-h, --help show this help message and exit
subcommands:
valid subcommands
{version,info,services,load,run,stop,unload}
help for subcommands
version print version
info print bundle information
services print service information
load load a bundle
run run a bundle
stop stop a bundle
unload unload a bundle
Most sub-commands connect to a ConductR instance and therefore you have to specify its IP and port; if not given, CONDUCTR_IP environment variable or 127.0.0.1 will be used for the IP and CONDUCTR_PORT or 9005 for the port. Alternatively you can specify the IP via the --ip option and the port via the --port option.
Here’s an example for loading a bundle:
conduct load sbt-typesafe-conductr-tester-1.0.0-e172570d3c0fb11f4f9dbb8de519df58dcb490799f525bab43757f291e1d104d.zip
shazar
The shazar command can be used:
for packaging a directory that has a structure of a bundle to a bundle archive;
for packaging a bundle’s configuration to a bundle archive;
In both cases the source files are zipped and a SHA256 digest of the archive is appended to the bundle archive file name.
For pointers on command usage run shazar -h.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for typesafe-conductr-cli-0.12.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e7fee03e65bd1acda115281e2c5c55a1a7270c617911b08ea878e63aaddee7b |
|
MD5 | 9b7dc061f3114fa2c48d49f6c3f2ea73 |
|
BLAKE2b-256 | 36a18230195efc52d12f015895449280c3f7fdd486b4467130cf4523fcfbda0e |