diff options
-rw-r--r-- | Changes | 21 | ||||
-rw-r--r-- | Makefile.PL | 21 | ||||
-rw-r--r-- | README | 15 | ||||
-rw-r--r-- | lib/App/Glacier.pm | 2 | ||||
-rw-r--r-- | lib/App/Glacier/Bre.pm | 2 | ||||
-rw-r--r-- | lib/App/Glacier/DB.pm | 4 | ||||
-rw-r--r-- | lib/App/Glacier/Progress.pm | 7 | ||||
-rw-r--r-- | lib/App/Glacier/Signature.pm | 2 |
8 files changed, 67 insertions, 7 deletions
@@ -1,3 +1,24 @@ +2.13 2021-03-22 + +* Use explicit DESTROY with AUTOLOADs + +2.12 2021-02-12 + +* Change bugtracker address. + +2.10 2019-01-02 + +* The "periodic" subcommand + +The new subcommand "periodic" is responsible for maintaining the job database. +It finishes up pending glacier jobs, dowloading the results (both inventory +listings and requested files) and removes expired jobs. It should be run as a +cronjob. + +* When run on an EC2 instance, credentials can be obtained from the EC2 metadata + +* Directory validity is controlled using the LastInventoryDate field + 2.00 2018-03-08 * Redo the class system. diff --git a/Makefile.PL b/Makefile.PL index 93c95f9..2038f24 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -3,6 +3,7 @@ use strict; use warnings; use ExtUtils::MakeMaker; +use Module::Metadata; use Pod::Find qw(pod_where); use Pod::Usage; @@ -33,7 +34,25 @@ WriteMakefile(NAME => 'App::Glacier', 'Storable' => 2.34, 'Term::ReadKey' => 2.32, 'Text::Locus' => 1.01 - } ); + }, + META_MERGE => { + 'meta-spec' => { version => 2 }, + resources => { + repository => { + type => 'git', + url => 'git://git.gnu.org.ua/glacier.git', + web => 'http://git.gnu.org.ua/cgit/glacier.git/', + }, + bugtracker => { + web => 'https://puszcza.gnu.org.ua/bugs/?group=glacier', + mailto => 'gray+glacier@gnu.org.ua' + } + }, + provides => Module::Metadata->provides(version => '1.4', + dir => 'lib') + } + + ); sub pod_command_name { my ($pack) = @_; @@ -1,8 +1,8 @@ App::Glacier ============ -Command line utility for working with Amazon Glacier, an online file storage -web service that provides storage for data archiving and backup. +Command line utility for working with Amazon Glacier, an online service +that provides storage for data archiving and backup. Usage: @@ -41,6 +41,17 @@ Examples: glacier mkvault NEWNAME +Installation +============ + +1. perl Makefile.PL +2. Run "make install" as root. +3. Install the following cronjob: + + */4 * * * * root glacier periodic + +The exact schedule is entirely up to you. Running periodic maintenance each +4 hours gives a sane default. Copying ======= diff --git a/lib/App/Glacier.pm b/lib/App/Glacier.pm index 2954a23..bb49cb1 100644 --- a/lib/App/Glacier.pm +++ b/lib/App/Glacier.pm @@ -8,7 +8,7 @@ use App::Glacier::Command; use File::Basename; use Carp; -our $VERSION = '2.00.90'; +our $VERSION = '2.13'; my %comtab = ( diff --git a/lib/App/Glacier/Bre.pm b/lib/App/Glacier/Bre.pm index cd9fb84..3be77e4 100644 --- a/lib/App/Glacier/Bre.pm +++ b/lib/App/Glacier/Bre.pm @@ -181,4 +181,6 @@ sub AUTOLOAD { croak "unknown method $AUTOLOAD"; } +sub DESTROY {} + 1; diff --git a/lib/App/Glacier/DB.pm b/lib/App/Glacier/DB.pm index aec3e04..ad165f0 100644 --- a/lib/App/Glacier/DB.pm +++ b/lib/App/Glacier/DB.pm @@ -20,7 +20,7 @@ my %transcode = ( ], 'json' => [ # Encoder - sub { JSON->new->convert_blessed(1)->encode(shift) }, + sub { JSON->new->allow_nonref->convert_blessed(1)->encode(shift) }, # Decoder sub { JSON-> new-> @@ -127,4 +127,6 @@ sub AUTOLOAD { $self->backend->${\$meth}(@_); } +sub DESTROY {} + 1; diff --git a/lib/App/Glacier/Progress.pm b/lib/App/Glacier/Progress.pm index 39b892b..8defc7d 100644 --- a/lib/App/Glacier/Progress.pm +++ b/lib/App/Glacier/Progress.pm @@ -119,8 +119,11 @@ sub display { $text .= '.' x int($self->{_current} / $self->{_total} * $w); } } - - $text .= ' ' x ($self->_getwidth - length($text)); + + my $pad = $self->_getwidth - length($text); + if ($pad > 0) { + $text .= ' ' x $pad; + } my $fd = $self->{_tty}; print $fd "\r$text"; } diff --git a/lib/App/Glacier/Signature.pm b/lib/App/Glacier/Signature.pm index 10d0ea7..55d296b 100644 --- a/lib/App/Glacier/Signature.pm +++ b/lib/App/Glacier/Signature.pm @@ -21,4 +21,6 @@ sub AUTOLOAD { $self->{_sig}->method(@_); } +sub DESTROY {} + 1; |