NAME

Net::Amazon::Glacier - An implementation of the Amazon Glacier RESTful API.

VERSION

Version 0.09

SYNOPSIS

This module implements the Amazon Glacier RESTful API, version 2012-06-01 (current at writing). It can be used to manage Glacier vaults and upload archives to them. Amazon Glacier is Amazon's long-term storage service.

Perhaps a little code snippet.

use Net::Amazon::Glacier;

my $glacier = Net::Amazon::Glacier->new(
	'eu-west-1',
	'AKIMYACCOUNTID',
	'MYSECRET',
);

$glacier->create_vault( 'a_vault' );

The functions are intended to closely reflect Amazon's Glacier API. Please see Amazon's API reference for documentation of the functions: http://docs.amazonwebservices.com/amazonglacier/latest/dev/amazon-glacier-api.html.

CONSTRUCTOR

new( $region, $account_id, $secret )

VAULT OPERATORS

create_vault( $vault_name )

Creates a vault with the specified name. Returns true on success, false on failure.

delete_vault( $vault_name )

Deletes the specified vault. Returns true on success, false on failure.

describe_vault( $vault_name )

Fetches information about the specified vault. Returns a hash reference with the keys described by http://docs.amazonwebservices.com/amazonglacier/latest/dev/api-vault-get.html. Returns false on failure.

list_vaults( [$limit, [$marker] ] )

Lists the vaults. Returns a hash reference with a "marker" key, for pagination, and a "VaultList", which describes the vaults. The content of the vault list, and how $limit and $marker can be used for pagination, is described by http://docs.amazonwebservices.com/amazonglacier/latest/dev/api-vaults-get.html. Returns false on failure.

ARCHIVE OPERATIONS

upload_archive( $vault_name, $archive_path, [ $description ] )

Uploads an archive to the specified vault. $archive_path is the local path to any file smaller than 4GB. For larger files, see multi-part upload. An archive description of up to 1024 printable ASCII characters can be supplied. Returns the Amazon-generated archive ID on success, or false on failure.

NOT IMPLEMENTED

The following parts of Amazon's API have not yet been implemented. This is mainly because the author hasn't had a use for them yet. If you do implement them, feel free to send a patch.

  • PUT/GET/DELETE vault notifications

  • Archive deletion

  • Multipart upload operations

  • Job operations

SEE ALSO

See also Victor Efimov's MT::AWS::Glacier, an application for AWS Glacier synchronization. It is available at https://github.com/vsespb/mt-aws-glacier.

AUTHOR

Tim Nordenfur, <tim at gurka.se>

BUGS

Please report any bugs or feature requests to bug-net-amazon-glacier at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-Amazon-Glacier. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Net::Amazon::Glacier

You can also look for information at:

LICENSE AND COPYRIGHT

Copyright 2012 Tim Nordenfur.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.