The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Rex - Remote Execution

DESCRIPTION

(R)?ex is a small script to ease the execution of remote commands. You can write small tasks in a file named Rexfile.

You can find examples and howtos on http://rexify.org/

GETTING HELP

Dependencies

  • Net::SSH2

  • Expect

    Only if you want to use the Rsync module.

  • DBI

    Only if you want to use the DB module.

SYNOPSIS

 desc "Show Unix version";
 task "uname", sub {
     say run "uname -a";
 };

 bash# rex -H "server[01..10]" uname

See Rex::Commands for a list of all commands you can use.

CLASS METHODS

get_current_connection

This function is deprecated since 0.28! See Rex::Commands::connection.

Returns the current connection as a hashRef.

server

The server name

ssh

1 if it is a ssh connection, 0 if not.

is_ssh

Returns 1 if the current connection is a ssh connection. 0 if not.

is_local

Returns 1 if the current connection is local. Otherwise 0.

is_sudo

Returns 1 if the current operation is executed within sudo.

get_sftp

Returns the sftp object for the current ssh connection.

connect

Use this function to create a connection if you use Rex as a library.

 use Rex;
 use Rex::Commands::Run;
 use Rex::Commands::Fs;
   
 Rex::connect(
    server      => "remotehost",
    user        => "root",
    password    => "f00b4r",
    private_key => "/path/to/private/key/file",
    public_key  => "/path/to/public/key/file",
 );
    
 if(is_file("/foo/bar")) {
    print "Do something...\n";
 }
     
 my $output = run("uptime");

CONTRIBUTORS

Many thanks to the contributors for their work (alphabetical order).

Alexandr Ciornii
Anders Ossowicki
Boris Däppen
Chris Steigmeier
Chenryn
Cuong Manh Le
Daniel Baeurer
Dominik Danter
Dominik Schulz
Fran Rodriguez
Ferenc Erki
Franky Van Liedekerke
Gilles Gaudin, for writing a french howto
Hiroaki Nakamura
Jean Charles Passard
Jeen Lee
Jonathan Delgado
Joris
Jose Luis Martinez
Laird Liu
Mario Domgoergen
Nikolay Fetisov
Peter H. Ezetta
RenatoCRON
Samuele Tognini
Sascha Guenther
Sven Dowideit
Tianon Gravi
Tokuhiro Matsuno
Tomohiro Hosaka

1 POD Error

The following errors were encountered while parsing the POD:

Around line 595:

Non-ASCII character seen before =encoding in 'Däppen'. Assuming UTF-8