use BackupPC::Lib;
use DBI;
+use Data::Dump qw(dump);
die("BackupPC::Lib->new failed\n") if ( !(my $bpc = BackupPC::Lib->new) );
my %opts;
# no options currently
-if ( !getopts("", \%opts) || @ARGV < 3 ) {
+if ( !getopts("", \%opts) || @ARGV < 2 ) {
print STDERR <<EOF;
-usage: $0 archiveHost userName hosts[:num]...
+usage: $0 archiveHost userName [hosts[:num]...]
EOF
exit(1);
}
});
my $Hosts = $bpc->HostInfoRead();
-my $ArchiveHost = $ARGV[0];
-my $UserName = $ARGV[1];
+my $ArchiveHost = shift @ARGV;
+my $UserName = shift @ARGV;
+my @HostFilter = @ARGV;
my $TopDir = $bpc->{Conf}{TopDir};
if ( !defined($Hosts->{$ArchiveHost}) ) {
}
$bpc->ConfigRead($ArchiveHost);
+if ( ! @HostFilter ) {
+ @HostFilter = keys %$Hosts;
+}
+
+warn "archiving hosts ",dump(@HostFilter);
+
my(@HostList, @BackupList);
-for ( my $i = 2 ; $i < @ARGV ; $i++ ) {
- my ($host,$num) = split(/:/,$ARGV[$i],2);
+foreach ( @HostFilter ) {
+ my ($host,$num) = split(/:/,$_,2);
if ( !defined($Hosts->{$host}) ) {
print(STDERR "$0: host $host doesn't exist... quitting\n");
exit(1);
}
my @backups = $bpc->BackupInfoRead($host);
if ( !@backups ) {
- print(STDERR "$0: host $host doesn't have any backups... quitting\n");
- exit(1);
+ warn "$0: host $host doesn't have any backups... skipping\n";
+ next;
}
$sth->execute( $host );