-
-
17 May 2011 03:29:25 UTC
- Distribution: App-Shotgun
- Module version: 0.001
- Source (raw)
- Browse (raw)
- Changes
- Homepage
- How to Contribute
- Repository
- Issues
- Testers (421 / 0 / 0)
- Kwalitee
Bus factor: 1- % Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (17.45KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
NAME
App::Shotgun - mass upload of files via SCP/FTP/...
VERSION
version 0.001
SYNOPSIS
use App::Shotgun; my $shotgun = App::Shotgun->new( source => '../relative/path', files => [ # NEVER NEVER EVER EVER use relative paths here! # They should be in the source path 'robots.txt', 'dir/dir/dir/file.txt', 'category/index.html', 'index.html', ], targets => [ { type => 'FTP', name => 'Target 1', # optional path => 'htdocs/', # optional hostname => 'my.local', username => 'notfor', password => 'you321', }, { type => 'SFTP', name => 'Target 2', # optional path => '/tmp/testenv', # optional hostname => 'myother.local', username => 'notfor', # prepared key authentifications are just working # probably more options for configuring ssh, like alternative private key }, ], ); # Order of upload: # Target 1: robots.txt # Target 2: robots.txt # Target 1: dir/dir/dir/file.txt # Target 2: dir/dir/dir/file.txt # ... $shotgun->shot; print "Success: ".($shotgun->success ? 'YES' : 'NO')."\n"; print "Error: ".$shotgun->error if (!$shotgun->success); my $other_shotgun = App::Shotgun->new( source => '/absolute/path', filelist => 'filelist.txt', );
DESCRIPTION
This module uploads the filelist textfile given via filelist or the filelist given as array via files to all given targets. It uploads file after file, to target after target, that means, first file will get uploaded to all target, and if they all are successful done, the next file will be uploaded. This module doesn't do any "smart" things like compare filesize/modification time/etc and just uploads the files. Hence the name "shotgun" which is appropriate :)
For first the module is made to try again very often but will not continue on fail and close with an exit code above 0.
Please look at the appropriate
App::Shotgun::Target::*
classes for their attributes and how to use them.METHODS
shot
The main entry point of this module.
Returns nothing.
shot_poe
Use this method if you are embedding this module in a bigger POE-based program. The only difference with "shot" is that this method will not run the POE kernel, leaving it to the caller to do so.
AUTHORS
Torsten Raudssus <torsten@raudssus.de>
Apocalypse <APOCAL@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Raudssus Social Software http://www.raudssus.de/.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Module Install Instructions
To install App::Shotgun, copy and paste the appropriate command in to your terminal.
cpanm App::Shotgun
perl -MCPAN -e shell install App::Shotgun
For more information on module installation, please visit the detailed CPAN module installation guide.