package Dist::Zilla::Plugin::Rsync;
BEGIN {
$Dist::Zilla::Plugin::Rsync::VERSION = '0.1';
}
=encoding utf8
=head1 SYNOPSIS
Upload your distribution tarball using C<rsync>:
[Rsync]
where = user@somewhere:destination/path
options = --progress -e ssh
=head1 DESCRIPTION
The C<where> config key is required. The C<options> default to
C<-e ssh>.
=head1 AUTHOR
Tomáš Znamenáček, zoul@fleuron.cz
=cut
use Moose;
use CLASS;
with 'Dist::Zilla::Role::Releaser';
has where => (is => 'ro', isa => 'Str', required => 1);
has options => (is => 'ro', isa => 'Str', default => '-e ssh');
sub release
{
my $self = shift;
my $tarball = shift;
my @options = split(/\s/, $self->options);
system('rsync', @options, $tarball, $self->where);
}
CLASS->meta->make_immutable;
no Moose;
'SDG';