Project

mssh

0.02
No commit activity in last 3 years
No release in over 3 years
Simple library for running jobs and sshing to many hosts at once.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0

Runtime

>= 0
 Project Readme

mssh, mcmd

Tools for running multiple commands and ssh jobs in parallel, and easily collecting the result

Usage

mssh -r host01,host02,host03 "uname -r" -c

Usage: mssh [options]
    -r, --range RANGE                Requires a configured Range::Client. Use --hostlist if you do not use range
        --hostlist x,y,z             List of hostnames to execute on
    -f, --file FILE                  List of hostnames in a FILE use (/dev/stdin) for reading from stdin
    -m, --maxflight 50               How many subprocesses? 50 by default
    -t, --timeout 60                 How many seconds may each individual process take? 0 for no timeout
    -g, --global_timeout 600         How many seconds for the whole shebang 0 for no timeout
    -c, --collapse                   Collapse similar output 
    -v, --verbose                    verbose 
    -d, --debug                      Debug output
    

Installing

mssh is a rubygem: gem install mssh. http://rubygems.org/gems/mssh

BUGS/TODO

  • Optionally Incorporate stderr into -c, with $?
  • allow commandline manipulation of ssh args
  • factor out redundancy between bin/mssh and bin/mcmd (cli module?)
  • incorporate range / foundation lookup syntax for -r
  • json output mode
  • to-file output mode
  • lots of rough spots, not super slick yet
  • needs testing real bad. 0.1 release