Run user programs as nobody:nogroup
[gruntmaster-daemon.git] / lib / Gruntmaster / Daemon / Format.pm
index 5f503a117a534a4749294611034e2315dc8ebe93..529931fbf8d88827ca8dc25abd0a746583ec29e9 100644 (file)
@@ -15,7 +15,7 @@ use POSIX qw/mkfifo/;
 use String::ShellQuote qw/shell_quote/;
 use Try::Tiny;
 
 use String::ShellQuote qw/shell_quote/;
 use Try::Tiny;
 
-our $VERSION = "5999.000_004";
+our $VERSION = '5999.000_004';
 our @EXPORT_OK = qw/prepare_files stopvms/;
 
 ##################################################
 our @EXPORT_OK = qw/prepare_files stopvms/;
 
 ##################################################
@@ -47,11 +47,12 @@ sub execlist {
                get_logger->trace("Running in VM $vm: $cmd");
                $vm{$vm}->send($cmd);
        } else {
                get_logger->trace("Running in VM $vm: $cmd");
                $vm{$vm}->send($cmd);
        } else {
-               my $ret = fork // die 'Cannot fork';
+               my $ret = fork // die "Cannot fork\n";
                if ($ret) {
                        waitpid $ret, 0;
                } else {
                if ($ret) {
                        waitpid $ret, 0;
                } else {
-                       open STDOUT, ">$er";
+                       open STDOUT, '>', $er or die "Cannot open $er\n";
+                       get_logger->trace("Running: gruntmaster-exec @args");
                        exec 'gruntmaster-exec', @args;
                }
        }
                        exec 'gruntmaster-exec', @args;
                }
        }
@@ -59,9 +60,9 @@ sub execlist {
        die "gruntmaster-exec died\n" if -z $er;
        my ($excode, $exmsg) = read_file $er;
        unlink $er;
        die "gruntmaster-exec died\n" if -z $er;
        my ($excode, $exmsg) = read_file $er;
        unlink $er;
-       chomp ($excode, $exmsg);
+       chomp ($excode, $exmsg); ## no critic (ProhibitParensWithBuiltins)
        get_logger->trace("Exec result: $excode $exmsg");
        get_logger->trace("Exec result: $excode $exmsg");
-       die [$excode, $exmsg] if $excode > 0;
+       die [$excode, $exmsg] if $excode > 0; ## no critic (RequireCarping)
 }
 
 sub command_and_args{
 }
 
 sub command_and_args{
@@ -83,8 +84,8 @@ sub mkrun{
                local *__ANON__ = 'mkrun_runner';
                my ($name, %args) = @_;
                get_logger->trace("Running $name...");
                local *__ANON__ = 'mkrun_runner';
                my ($name, %args) = @_;
                get_logger->trace("Running $name...");
-               my $basename = fileparse $name, qr/\.[^.]*/;
-               my @args;
+               my $basename = fileparse $name, qr/[.][^.]*/s;
+               my @args = ('--nobody');
                push @args, '--timeout', $args{timeout} if $args{timeout};
                push @args, '--mlimit',  $args{mlimit}  if $args{mlimit};
                push @args, '--olimit',  $args{olimit}  if $args{olimit};
                push @args, '--timeout', $args{timeout} if $args{timeout};
                push @args, '--mlimit',  $args{mlimit}  if $args{mlimit};
                push @args, '--olimit',  $args{olimit}  if $args{olimit};
This page took 0.01032 seconds and 4 git commands to generate.