File Coverage

blib/lib/Net/Amazon/S3/Tools.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package Net::Amazon::S3::Tools;
2              
3 1     1   20392 use 5.008008;
  1         4  
  1         34  
4 1     1   5 use strict;
  1         1  
  1         30  
5 1     1   6 use warnings;
  1         6  
  1         145  
6              
7             require Exporter;
8              
9             our @ISA = qw(Exporter);
10              
11             # Items to export into callers namespace by default. Note: do not export
12             # names by default without a very good reason. Use EXPORT_OK instead.
13             # Do not simply export all your public functions/methods/constants.
14              
15             # This allows declaration use Net::Amazon::S3::Tools ':all';
16             # If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
17             # will save memory.
18             our %EXPORT_TAGS = ( 'all' => [ qw(
19            
20             ) ] );
21              
22             our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
23              
24             our @EXPORT = qw(
25            
26             );
27              
28             our $VERSION = '0.07';
29              
30              
31             # Preloaded methods go here.
32              
33             1;
34             __END__
35              
36             =head1 NAME
37              
38             Net::Amazon::S3::Tools - command line tools for Amazon S3
39              
40             =head1 SYNOPSIS
41              
42             s3acl [options] [[bucket|bucket/key] ...]
43             s3ls [options]
44             s3ls [options] [ bucket/item ... ]
45             s3get [options] [ bucket/item ... ]
46             s3put [options] [ bucket/item ... ]
47             s3mkbucket [options] [ bucket ... ]
48             s3rmbucket [options] [ bucket ... ]
49              
50             =head1 OPTIONS
51              
52             Each of the tools have their own specific command line options,
53             but the also all share some common command line options,
54             which are described here.
55              
56             =item B<--help>
57              
58             Print a brief help message and exits.
59              
60             =item B<--man>
61              
62             Prints the manual page and exits.
63              
64             =item B<--verbose>
65              
66             Output what is being done as it is done.
67              
68             =item B<--access-key> and B<--secret-key>
69              
70             Specify the "AWS Access Key Identifiers" for the AWS account.
71             B<--access-key> is the "Access Key ID", and B<--secret-key> is
72             the "Secret Access Key". These are effectively the "username" and
73             "password" to the AWS account, and should be kept confidential.
74              
75             The access keys MUST be specified, either via these command line
76             parameters, or via the B<AWS_ACCESS_KEY_ID> and
77             B<AWS_ACCESS_KEY_SECRET> environment variables.
78              
79             Specifying them on the command line overrides the environment
80             variables.
81              
82             =item B<--secure>
83              
84             Uses SSL/TLS HTTPS to communicate with the AWS service, instead of
85             HTTP.
86              
87             =head1 DESCRIPTION
88              
89             These S3 command line tools allow you to manipulate and populate an S3
90             account. Refer to the documentation (pod and man) for each of the
91             tools.
92              
93             This L<Net::Amazon::S3::Tools> module is mostly just a stub, to hoist
94             the bundling and installation of the executable scripts that make up
95             the actual tools.
96              
97             =head1 BUGS
98              
99             Report bugs to Mark Atwood L<mark@fallenpegasus.com>.
100              
101             Occasionally the S3 service will randomly fail for no externally
102             apparent reason. When that happens, these tools should retry, with a
103             delay and a backoff.
104              
105             Access to the S3 service can be authenticated with a X.509
106             certificate, instead of via the "AWS Access Key Identifiers".
107             These tools should support that.
108              
109             It might be useful to be able to specify the "AWS Access Key Identifiers"
110             in the user's C<~/.netrc> file.
111             These tools should support that.
112              
113             Errors and warnings are very "Perl-ish", and can be confusing.
114              
115             =head1 SEE ALSO
116              
117             These tools use the L<Net::Amazon::S3> Perl module.
118              
119             The Amazon Simple Storage Service is documented at
120             L<http://aws.amazon.com/s3>.
121              
122             These tools are hosted at
123             L<http://fallenpegasus.com/code/s3-tools>.
124              
125             =head1 AUTHOR
126              
127             Written by Mark Atwood L<mark@fallenpegasus.com>.
128              
129             Many thanks to Wotan LLC L<http://wotanllc.com>, for supporting the
130             development of these S3 tools.
131              
132             Many thanks to the Amazon AWS engineers for developing S3.
133              
134             =head1 COPYRIGHT AND LICENSE
135              
136             Copyright (C) 2007,2008 by Mark Atwood
137              
138             This module is not an official Amazon product or service. Information
139             used to create this module was obtained only from publicly available
140             information, mainly from the published Amazon documentation.
141              
142             This module is free software: you can redistribute it and/or modify
143             it under the terms of the GNU Lesser General Public License as published
144             by the Free Software Foundation, either version 2.1 of the License, or
145             (at your option) any later version.
146              
147             This program is distributed in the hope that it will be useful,
148             but WITHOUT ANY WARRANTY; without even the implied warranty of
149             MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
150             GNU General Public License for more details.
151              
152             You should have received a copy of the GNU General Public License
153             and the GNU Lesser General Public License along with this program.
154             If not, see <http://www.gnu.org/licenses/>.
155              
156             =cut