diff options
author | Florian Pritz <bluewind@xinu.at> | 2019-02-07 17:01:28 +0100 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2019-02-07 17:14:35 +0100 |
commit | 4034169f9655ea6b28741067c58c0219e42365e1 (patch) | |
tree | 9a76c3c328d7420ec4dc2494889800823ab21ac2 /lib/App/BorgRestore/Borg.pm | |
parent | 138ba53c92dc10c1b9b9bb31448b76f9bbac0ecd (diff) | |
download | App-BorgRestore-4034169f9655ea6b28741067c58c0219e42365e1.tar.gz App-BorgRestore-4034169f9655ea6b28741067c58c0219e42365e1.tar.xz |
Support borg list --prefix option via setting
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'lib/App/BorgRestore/Borg.pm')
-rw-r--r-- | lib/App/BorgRestore/Borg.pm | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/App/BorgRestore/Borg.pm b/lib/App/BorgRestore/Borg.pm index 62555fa..def6b9c 100644 --- a/lib/App/BorgRestore/Borg.pm +++ b/lib/App/BorgRestore/Borg.pm @@ -24,11 +24,12 @@ App::BorgRestore::Borg abstracts borg commands used by L<App::BorgRestore>. =cut -method new($class: $borg_repo) { +method new($class: $borg_repo, $backup_prefix) { my $self = {}; bless $self, $class; $self->{borg_repo} = $borg_repo; + $self->{backup_prefix} = $backup_prefix; $self->{borg_version} = $self->borg_version(); @@ -52,17 +53,18 @@ method borg_version() { method borg_list() { my @archives; + my $backup_prefix = $self->{backup_prefix}; if (Version::Compare::version_compare($self->{borg_version}, "1.1") >= 0) { $log->debug("Getting archive list via json"); - run [qw(borg list --json), $self->{borg_repo}], '>', \my $output or die $log->error("borg list returned $?")."\n"; + run [qw(borg list --prefix), $backup_prefix, qw(--json), $self->{borg_repo}], '>', \my $output or die $log->error("borg list returned $?")."\n"; my $json = decode_json($output); for my $archive (@{$json->{archives}}) { push @archives, $archive->{archive}; } } else { $log->debug("Getting archive list"); - run [qw(borg list), $self->{borg_repo}], '>', \my $output or die $log->error("borg list returned $?")."\n"; + run [qw(borg list --prefix), $backup_prefix, $self->{borg_repo}], '>', \my $output or die $log->error("borg list returned $?")."\n"; for (split/^/, $output) { if (m/^([^\s]+)\s/) { |