Skip to content

Latest commit

 

History

History
25 lines (20 loc) · 1.19 KB

README.md

File metadata and controls

25 lines (20 loc) · 1.19 KB

Octopus

Octopus is a commandline tool for running the same command on multiple remote hosts in parallel.

Build Status

Theory

Octopus is a simple tool inspired by pdsh's ability to execute commands on multiple hosts in parallel. In environments where pdsh cannot be installed, Go's ability to produce static binaries is useful; thus, Octopus is written in Go. As long as one has the ability to scp or rsync files to a host, a static octopus executable can be copied to it. A host may be a cluster admin node, for example.

Octopus can execute arbitrary commands on multiple hosts in parallel, and hosts are grouped together into "host groups" in a file which inspired by pdsh's "genders" file. The host groups file for Octopus is actually a Bash file with groups defined by variable definitions. A file which defines host groups as Bash variables was chosen so that so that the same file may be used easily by both Octopus and by user-made scripts.

Usage

See octopus [--help|-h] for command usage.

An example host groups file can be found in the config directory.