28 lines
653 B
Perl
Executable File
28 lines
653 B
Perl
Executable File
#!/usr/bin/env perl
|
|
|
|
use strict;
|
|
use warnings FATAL => 'all';
|
|
|
|
use FindBin;
|
|
FindBin::again();
|
|
|
|
use Path::Class;
|
|
use Daemon::Control;
|
|
|
|
my $home = ($ENV{NETDISCO_HOME} || $ENV{HOME});
|
|
my $netdisco = file($FindBin::RealBin, 'netdisco-web-fg');
|
|
|
|
my $log_dir = dir($home, 'logs');
|
|
mkdir $log_dir if ! -d $log_dir;
|
|
|
|
my @args = (scalar @ARGV > 1 ? @ARGV[1 .. $#ARGV] : ());
|
|
|
|
Daemon::Control->new({
|
|
name => 'Netdisco Web',
|
|
program => 'plackup',
|
|
program_args => [@args, $netdisco->stringify],
|
|
pid_file => file($home, 'netdisco-web.pid'),
|
|
stderr_file => file($log_dir, 'netdisco-web.log'),
|
|
stdout_file => file($log_dir, 'netdisco-web.log'),
|
|
})->run;
|