Reparto
Do things on multiple ssh connections
Requirements
you can install from rubygems or well from your distribution repositories
-
net/ssh
-
net/sftp
-
ini
-
r18n-desktop
You can
-
Call commands
-
Copy files
-
Copy directories
-
Update directories
-
Easy file .ini with your actions
create a file myssh.ini:
;this a comment to host 192.168.1.33
[192.168.1.33]
type = ssh
username = root
password = root
port = 22
;update fail2ban from this host to remote host 192.168.1.33
cmd_1 = service fail2ban stop
updatedir_local_2 = /etc/fail2ban
updatedir_remote_2 = /etc/fail2ban
cmd_3 = service fail2ban start
;backups directory
cpdir_local_4 = /etc/fail2ban
cpdir_remote_4 = /var/backups/fail2ban/20120415
;update/copy one file
cp_local_5 = /etc/rc.local
cp_remote_5 = /etc/rc.local
;another host actions
[....]
....
then from a terminal call script, and look the output:
$ ruby reparto.rb myssh.ini