[Bio] / FortyEight / reset_stage.pl Repository:
ViewVC logotype

View of /FortyEight/reset_stage.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (download) (as text) (annotate)
Sat Jun 26 21:56:09 2010 UTC (9 years, 5 months ago) by gdpusch
Branch: MAIN
CVS Tags: mgrast_dev_08112011, mgrast_dev_08022011, rast_rel_2014_0912, mgrast_dev_05262011, mgrast_dev_04082011, rast_rel_2010_0928, mgrast_version_3_2, mgrast_dev_12152011, mgrast_dev_06072011, rast_rel_2014_0729, mgrast_dev_02212011, rast_rel_2010_1206, mgrast_release_3_0, mgrast_dev_03252011, rast_rel_2011_0119, mgrast_release_3_0_4, mgrast_release_3_0_2, mgrast_release_3_0_3, mgrast_release_3_0_1, mgrast_dev_03312011, mgrast_release_3_1_2, mgrast_release_3_1_1, mgrast_release_3_1_0, mgrast_dev_04132011, mgrast_dev_04012011, rast_rel_2010_0827, myrast_33, rast_rel_2011_0928, mgrast_dev_04052011, mgrast_dev_02222011, mgrast_dev_10262011, HEAD
Changes since 1.1: +24 -12 lines
Added code to remove 'CANCEL' file.

#
# Reset the given stage of the job, and set the job to active
# (remove ERROR, touch ACTIVE).
#

use strict;
use Job48;

my $usage = "reset_stage jobdir stage";

@ARGV == 2 or die $usage;

my $jobdir = shift;
my $stage = shift;

my $job = Job48->new($jobdir);

if ($job->active()) {
    print "Job is still active, not changing\n";
    exit;
}

my $meta    = $job->meta();
my $jobddir = $job->dir();
my $status  = $meta->get_metadata("status.$stage");

if ($status ne 'error') {
    print "Job stage $stage is not in error, not changing\n";
    exit(1);
}

$meta->set_metadata("status.$stage", "not_started");
$meta->set_metadata("$stage.running", "no");


my $cfile = "$jobdir/CANCEL";
if (-f $cfile) {
    print "Clearing CANCEL file.\n";
    unlink($cfile) || die "Could not remove CANCEL file \'$cfile\'";
}


my $efile = "$jobdir/ERROR";
if (-f $efile) {
    my $etext = `cat $efile`;
    print "Clearing ERROR file: $etext\n";
    unlink($efile) || die "Could not remove ERROR file \'$efile\'";
}

open(TMP, ">$jobdir/ACTIVE") or die "cannot touch $jobdir/ACTIVE: $!";
close(TMP);


MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3