Expand README.md, giving a better sense of whats going on here
This commit is contained in:
53
README.txt
53
README.txt
@ -3,9 +3,27 @@
|
|||||||
| |\/| | | | | | __| | '_ \ / _` | | | | |
|
| |\/| | | | | | __| | '_ \ / _` | | | | |
|
||||||
| | | | |_| | | |_| | |_) | (_| | | |_|_|
|
| | | | |_| | | |_| | |_) | (_| | | |_|_|
|
||||||
|_| |_|\__,_|_|\__|_|_.__/ \__,_|_|_(_|_)
|
|_| |_|\__,_|_|\__|_|_.__/ \__,_|_|_(_|_)
|
||||||
|
|
||||||
Run commands across a set of hosts interactively!
|
Run commands across a set of hosts interactively!
|
||||||
=================================================
|
|
||||||
|
|
||||||
|
## Core Concepts
|
||||||
|
|
||||||
|
At its core, multiball allows you to run commands on multiple target hosts via ssh. The actual commands are run
|
||||||
|
non-interactively, and when complete show their output.
|
||||||
|
|
||||||
|
Multiball has a list of 'default' hosts that it loads from a specified configuration file.
|
||||||
|
|
||||||
|
Multiball has a list of 'targeted' hosts that it will run the commands on. This list is arbitrary, and is set to the
|
||||||
|
default host list at startup.
|
||||||
|
|
||||||
|
Multiball includes a set of commands to manipulate the target list.
|
||||||
|
|
||||||
|
Multiball has a safety system: By default multiball is "safe", preventing any commands from being run on the target
|
||||||
|
list, while still allowing manipulation of the host list and other commands that would not run on the remote hosts. Once
|
||||||
|
it is unsafetied (using the `/safety off` command), any command that isn't a multiball command will be run on the remote
|
||||||
|
hosts in the target list.
|
||||||
|
|
||||||
|
## Quickstart
|
||||||
|
|
||||||
Basic configuration file is in `multiball.cfg.example` in the distribution. Customize to your liking.
|
Basic configuration file is in `multiball.cfg.example` in the distribution. Customize to your liking.
|
||||||
|
|
||||||
@ -13,8 +31,7 @@ Host list is loaded from your ssh configuration by default (assuming you have a
|
|||||||
|
|
||||||
Planned features, see __main__.py's comments.
|
Planned features, see __main__.py's comments.
|
||||||
|
|
||||||
Installation
|
### Installation
|
||||||
-------------------------------------------------
|
|
||||||
|
|
||||||
Install dependencies:
|
Install dependencies:
|
||||||
|
|
||||||
@ -33,3 +50,31 @@ Install, including dependencies:
|
|||||||
cd multiball
|
cd multiball
|
||||||
make
|
make
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
|
||||||
|
The `multiball` command starts an interactive shell. It looks in the current working directory for its configuration
|
||||||
|
file (`multiball.cfg`). Typically, a different configuration for each project, client, etc would be created. For
|
||||||
|
example at Autonomic, we have a multiball.cfg in our infrastructure repository, in `infrastructure-data`, so to work
|
||||||
|
on Autonomic hosts, run multiball from that directory.
|
||||||
|
|
||||||
|
Commands:
|
||||||
|
|
||||||
|
* /help, help, ? - This help
|
||||||
|
* /targethosts, /targethosts, /targets, /hosts - Show the current list of target hosts.
|
||||||
|
* /clear - Clear target host list.
|
||||||
|
* /host, /add, /target - Set the target host list. /host clears the list first. Supports wildcards.
|
||||||
|
* /remove, /removehost, /removetarget - Remove hosts from target host list. Supports wildcards.
|
||||||
|
* /all - Reset the target host list to all known hosts.
|
||||||
|
* /allhosts, /alltargets - Show list of all known hosts.
|
||||||
|
* /exit, exit - Exit.
|
||||||
|
* /environment, /env, /set - Set (or print) environment to send to remote host before running commands.
|
||||||
|
* /clearenv - Clear environment (entire or single variable)
|
||||||
|
* /safety, safety - Turn on safety or turn off with `off`.
|
||||||
|
* /safe - Run this command as if it were safe even if safety is on.
|
||||||
|
* /confirm - [scripting] Prompt for confirmation
|
||||||
|
* /echo - [scripting] print string
|
||||||
|
* /arguments - [scripting] Abort if no arguments are specified.
|
||||||
|
* /unsafe - [scripting] Abort command if safety is on.
|
||||||
|
* /save - Save last run log to file.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user