Casiano Rodriguez-Leon

NAME

Net::ParSCP - Secure transfer of files between clusters via SSH

SYNOPSIS

  # One liner: transfers 'file' to all 
  # the machines in cluster 'clu' but 'june'
  $ perl -MNet::ParSCP \
     -e 'parpush(sourcefile=>q{file}, destination=>q{clu-june:/tmp/})'

DESCRIPTION

Functions in this module are for the implementation of the script parpush.

parpush

The main function is parpush:

  ($okh, $pid) = parpush(
    configfile  => $configfile,
    destination => [ 'cluster1:/path1', 'cluster2:/path2' ],
    scp         => $scp,
    scpoptions  => $scpoptions,
    sourcefile  => $sourcefile,
  );

only sourcefile and destination are required. The other arguments are optional.

In a list context returns two hash references ($okh, $pid).

%$okh

Is a hash with keys the names of the machines considered during the connections. The value is true (1) if all the connections with the corresponding machine were closed succesfully, false otherwise.

%$pid

Is a hash with keys the names of the machines considered during the connection. The value is an anonymous list with the process identifiers of the connections (undef if the fork failed) to that machine.

EXPORT

  parpush
  exec_cssh
  help
  version
  usage 
  $VERBOSE
  $DRYRUN

SEE ALSO

AUTHOR

Casiano Rodriguez-Leon <casiano.rodriguez.leon@gmail.com>

COPYRIGHT AND LICENSE

Copyright (C) 2009-2009 by Casiano Rodriguez-Leon

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.