NAME

SYNOPSIS

OPTIONS

--help

Print a brief help message and exits.

--man

Prints the manual page and exits.

--verbose

Output what is being done as it is done.

--access-key and --secret-key

Specify the ``AWS Access Key Identifiers'' for the AWS account. --access-key is the ``Access Key ID'', and --secret-key is the ``Secret Access Key''. These are effectively the ``username'' and ``password'' to the AWS account, and should be kept confidential.

The access keys MUST be specified, either via these command line parameters, or via the AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET environment variables.

Specifying them on the command line overrides the environment variables.

--secure

Uses SSL/TLSHTTPS to communicate with the AWS service, instead of HTTP.

ENVIRONMENT VARIABLES

AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET

Specify the ``AWS Access Key Identifiers'' for the AWS account. AWS_ACCESS_KEY_ID contains the ``Access Key ID'', and AWS_ACCESS_KEY_SECRET contains the ``Secret Access Key''. These are effectively the ``username'' and ``password'' to the AWS service, and should be kept confidential.

The access keys MUST be specified, either via these environment variables, or via the --access-key and --secret-key command line parameters.

If the command line parameters are set, they override these environment variables.

CONFIGURATION FILE

The configuration options will be read from the file "~/.s3-tools" if it exists. The format is the same as the command line options with one option per line. For example, the file could contain:

--access-key <AWS access key>
--secret-key <AWS secret key>
--secure

This example configuration file would specify the AWS access keys and that a secure connection using HTTPS should be used for all communications.

DESCRIPTION

Reads stdin, and writes it to an S3 item

BUGS

Report bugs to Mark Atwood mark@fallenpegasus.com.

Occasionally the S3 service will randomly fail for no externally apparent reason. When that happens, this tool should retry, with a delay and a backoff.

Access to the S3 service can be authenticated with a X.509 certificate, instead of via the ``AWS Access Key Identifiers''. This tool should support that.

It might be useful to be able to specify the ``AWS Access Key Identifiers'' in the user's "~/.netrc" file. This tool should support that.

Errors and warnings are very ``Perl-ish'', and can be confusing.

Trying to write to a bucket that does not exist or is not accessable by the user generates less than helpful error messages.

Trying to put a bucket instead of an item is silently skipped.

TODO

option to read from files instead of stdin
use the fs mtime to set the http Last-Modified
option to read filenames to read from, from stdin
option to read from a tar file stream, for multiple items
option to magically guess mime type
option to use extended file attributes for metadata
option to have a progress bar

AUTHOR

Written by Mark Atwood mark@fallenpegasus.com.

Many thanks to Wotan LLC <http://wotanllc.com>, for supporting the development of these S3 tools.

Many thanks to the Amazon AWS engineers for developing S3.

SEE ALSO

These tools use the Net::Amazon:S3 Perl module.

The Amazon Simple Storage Service (S3) is documented at <http://aws.amazon.com/s3>.