use File::Basename;
use File::Find;
use Test::Warn;
+use File::Temp qw/ tempdir /;
+use File::Path;
-system(dirname(__FILE__) . "/zebra_config.pl");
-my $datadir = dirname(__FILE__) . "/data";
+my $datadir = tempdir();
+system(dirname(__FILE__) . "/zebra_config.pl $datadir");
+my $sourcedir = dirname(__FILE__) . "/data";
my $QueryStemming = 0;
my $QueryAutoTruncate = 0;
unlink("$datadir/zebra.log");
system("zebraidx -c $datadir/etc/koha/zebradb/zebra-biblios.cfg -v none,fatal,warn -g iso2709 -d biblios init");
-system("zebraidx -c $datadir/etc/koha/zebradb/zebra-biblios.cfg -v none,fatal,warn -g iso2709 -d biblios update $datadir/zebraexport/biblio");
+system("zebraidx -c $datadir/etc/koha/zebradb/zebra-biblios.cfg -v none,fatal,warn -g iso2709 -d biblios update $sourcedir/zebraexport/biblio");
system("zebraidx -c $datadir/etc/koha/zebradb/zebra-biblios.cfg -v none,fatal,warn -g iso2709 -d biblios commit");
my $child = fork();
kill 9, $child;
# Clean up the Zebra files since the child process was just shot
-
- find(sub { unlink($_) if ( -f $_ && m/\.(mf|pid|LCK)$/ ); }, "$datadir");
- unlink("$datadir/var/run/zebradb/authoritysocket");
- unlink("$datadir/var/run/zebradb/bibliosocket");
+ rmtree $datadir;
}
}
use File::Spec;
my $source = File::Spec->rel2abs('.');
-my $destination = File::Spec->rel2abs('.') . "/t/db_dependent/data";
+my $destination = $ARGV[0];
make_path("$destination/var/lock/zebradb");
+make_path("$destination/var/lock/zebradb/biblios");
+make_path("$destination/var/lock/zebradb/authorities");
make_path("$destination/var/lib/zebradb");
+make_path("$destination/var/lib/zebradb/biblios");
+make_path("$destination/var/lib/zebradb/biblios/key");
+make_path("$destination/var/lib/zebradb/biblios/register");
+make_path("$destination/var/lib/zebradb/biblios/shadow");
+make_path("$destination/var/lib/zebradb/biblios/tmp");
+make_path("$destination/var/lib/zebradb/authorities");
+make_path("$destination/var/lib/zebradb/authorities/key");
+make_path("$destination/var/lib/zebradb/authorities/register");
+make_path("$destination/var/lib/zebradb/authorities/shadow");
+make_path("$destination/var/lib/zebradb/authorities/tmp");
make_path("$destination/var/run/zebradb");
$ENV{'INSTALL_BASE'} = $destination;