Add javascript
[gruntmaster-daemon.git] / lib / Gruntmaster / Daemon.pm
index 7a9dea668726a655c55ae36951dae459fa6bac04..9597572cbbdb8cd31bc33ecde60d7ad07dc5be97 100644 (file)
@@ -8,6 +8,7 @@ our $VERSION = '5999.000_005';
 
 use Gruntmaster::Daemon::Constants qw/ERR/;
 use Gruntmaster::Daemon::Format qw/prepare_files stopvms/;
+use Gruntmaster::SendResults qw/send_results_request/;
 
 use File::Slurp qw/read_file/;
 use File::Temp qw/tempdir/;
@@ -26,6 +27,7 @@ use constant FORMAT_EXTENSION => {
        GOLFSCRIPT => 'gs',
        HASKELL => 'hs',
        JAVA => 'java',
+       JAVASCRIPT => 'js',
        JULIA => 'jl',
        MONO => 'cs',
        OBERON => 'm',
@@ -110,6 +112,7 @@ sub process{
        $meta->{errors} = $errors;
 
        get_logger->info('Job result: ' . $meta->{result_text});
+       send_results_request($meta->{job_id}, $meta->{result}, $meta->{result_text});
 }
 
 sub process_job {
@@ -129,8 +132,8 @@ sub process_job {
        my $timeout_override = db()->query('SELECT timeout FROM limits WHERE problem=? AND format=?', $job->{problem}, $job->{format})->list;
        $meta->{timeout} = $timeout_override if defined $timeout_override;
        $meta->{tests} = decode_json $pb->{tests} if $meta->{runner} eq 'File';
-       $job->{contest} &&= contest_entry($job->{contest});
-       delete $meta->{precnt} unless $job->{contest} && $job->{contest}{started} && !$job->{contest}{finished}; ## no critic (ProhibitNegativeExpressionsInUnlessAndUntilConditions)
+       my $contest = $job->{contest} && contest_entry($job->{contest});
+       delete $meta->{precnt} unless $contest && $contest->{started} && !$contest->{finished}; ## no critic (ProhibitNegativeExpressionsInUnlessAndUntilConditions)
        $meta->{testcnt} = $meta->{precnt} if $meta->{precnt};
 
        $meta->{files}{ver} = {
@@ -138,6 +141,7 @@ sub process_job {
                format => $pb->{verformat},
                content => $pb->{versource},
        } if $pb->{verformat};
+       $meta->{job_id} = $job->{id};
 
        process $meta;
 
This page took 0.010366 seconds and 4 git commands to generate.