#!/usr/bin/perl 

use strict;
use warnings;

###########################################################
#
# The script creates tarballs of server predictions for QA  
# and send report about results to administrator.
# The script should be set in crontab just before the time  
# of release of targets. 
#
###########################################################

use lib qw(Core Classes);
use TargetsManager;
use LocalConfiguration;
use PredictionsManager;
use GroupsManager;
use Email;

use TarballsForQAManager;


my $manager = new TarballsForQAManager();
=head
# FOR DEBUGGING
#my $predictions_manager = new PredictionsManager();
my @targets = $manager->get_targets_for_stage1();
print "Targets for stage 1: \n";
foreach my $target(@targets){
print $target->{NAME}."\n";
$manager->submitDavisQApredictions("Davis-EMAconsensus", $target, 1);
sleep(5);
$manager->submitDavisQApredictions("Davis-EMAconsensusALL", $target, 1);
#my @predictions = $predictions_manager->tarballs_predictions($target->{NAME}, "server");
#my @predictions = $manager->get_predictions_for_stage2_for_target($target);
#foreach my $prediction (@predictions){
# print $prediction->{GROUP}."  ".$prediction->{GROUP_CODE}."  ".$prediction->{MODEL}."  \n";#.$prediction->{GDT_TS_AVR}."\n";
#}
}
#$manager->download_tarballs_all();
@targets = $manager->get_targets_for_stage2();
print "Targets for stage 2: \n";
foreach my $target(@targets){
print $target->{NAME}."\n";
}

my @targets = $manager->get_targets_for_all();
print "Targets for stage all: \n";
foreach my $target(@targets){
print $target->{NAME}."\n";
}

$manager->download_tarballs_all();

exit;
# END FOR DEBUGGING
=cut



#--------------------------------------
# download tarballs for stage1
#--------------------------------------
$manager->download_tarballs_stage1();


#--------------------------------------
# download tarballs for stage2
#--------------------------------------
$manager->download_tarballs_stage2();

#--------------------------------------
# download tarballs of all predictions
#--------------------------------------
$manager->download_tarballs_all();


#--------------------------------------
# wait for 60s
#--------------------------------------
sleep(60);

#--------------------------------------
# send models to servers
#--------------------------------------
$manager->distribute();
