Merge branch 'master' of ssh://cpp/liblerdorf
This commit is contained in:
commit
2f7839952c
4 changed files with 18 additions and 10 deletions
|
@ -111,7 +111,7 @@ if ($ref =~ m<^refs/tags/(.+)$>)
|
||||||
"id" => $id_project,
|
"id" => $id_project,
|
||||||
"rendu" => $tag,
|
"rendu" => $tag,
|
||||||
"login" => $repo_login,
|
"login" => $repo_login,
|
||||||
"path" => $ENV{GL_REPO_BASE_ABS}."/".$ENV{GL_REPO}.".git",
|
# "path" => "ssh://git@localhost/".$ENV{GL_REPO},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
if ($@) {
|
if ($@) {
|
||||||
|
|
|
@ -100,6 +100,8 @@ sub receive_std
|
||||||
my $file = $args->{param}{file};
|
my $file = $args->{param}{file};
|
||||||
my $login = $args->{param}{login} // "ref";
|
my $login = $args->{param}{login} // "ref";
|
||||||
|
|
||||||
|
log INFO, "Receiving student tarball: $login, for $year-$project_id-$rendu";
|
||||||
|
|
||||||
croak "No file named '$file' given" if (!exists $args->{files}{$file});
|
croak "No file named '$file' given" if (!exists $args->{files}{$file});
|
||||||
|
|
||||||
my $tempdir = tempdir(DIR => '/data/tmp');
|
my $tempdir = tempdir(DIR => '/data/tmp');
|
||||||
|
@ -200,6 +202,7 @@ sub run_moulette
|
||||||
|
|
||||||
copy("$filesdir/$login.ff", "$workdir/$login.ff") or croak "Cannont copy $login.ff";
|
copy("$filesdir/$login.ff", "$workdir/$login.ff") or croak "Cannont copy $login.ff";
|
||||||
|
|
||||||
|
next if ($login eq "ref" && ! -f "$workdir/$login.ft");
|
||||||
croak "Unable to find a relevant $login.ft, abort moulette start." if (! -f "$workdir/$login.ft");
|
croak "Unable to find a relevant $login.ft, abort moulette start." if (! -f "$workdir/$login.ft");
|
||||||
|
|
||||||
log WARN, "There is no ref for $project_id $rendu" if (! -f "$filesdir/ref.ff");
|
log WARN, "There is no ref for $project_id $rendu" if (! -f "$filesdir/ref.ff");
|
||||||
|
|
|
@ -20,14 +20,14 @@ sub process
|
||||||
my $rendu = $args->{param}{rendu};
|
my $rendu = $args->{param}{rendu};
|
||||||
my $login = $args->{param}{login};
|
my $login = $args->{param}{login};
|
||||||
|
|
||||||
my $path = $args->{param}{path} // "/srv/git/repositories/$year/$project_id/$login.git";
|
my $path = $args->{param}{path} // "ssh://git@localhost/$year/$project_id/$login.git";
|
||||||
|
|
||||||
croak "$path is not a valid path." if (! -d $path);
|
|
||||||
|
|
||||||
my $tempdir = tempdir();
|
my $tempdir = tempdir();
|
||||||
|
|
||||||
qx/git clone -b '$rendu' '$path' '$tempdir'/;
|
qx/git clone -b '$rendu' '$path' '$tempdir'/;
|
||||||
|
|
||||||
|
croak "$path is not a valid repository." if (! $?);
|
||||||
|
|
||||||
my $tar;
|
my $tar;
|
||||||
open my $fh, "tar -czf - -C '$tempdir' . |";
|
open my $fh, "tar -czf - -C '$tempdir' . |";
|
||||||
$tar .= $_ while(<$fh>);
|
$tar .= $_ while(<$fh>);
|
||||||
|
|
|
@ -55,12 +55,17 @@ fi
|
||||||
if [ "$ACTION" = "stop" ] || [ "$ACTION" = "restart" ]
|
if [ "$ACTION" = "stop" ] || [ "$ACTION" = "restart" ]
|
||||||
then
|
then
|
||||||
# Kill old liblersorf screen sessions
|
# Kill old liblersorf screen sessions
|
||||||
echo "$SCREEN -ls" | $SU intradmin | $GREP '[0-9]+\.lerdorf_[a-zA-Z0-9_-]+' |
|
if [ "$HOSTNAME" = "ksh" ]
|
||||||
while read LINE
|
then
|
||||||
do
|
killall screen
|
||||||
SNAME=`echo $LINE | $SED "s/^[^0-9]*([0-9]+\.[^ \t]+).*$/\1/"`
|
else
|
||||||
echo "$SCREEN -S \"$SNAME\" -X kill" | $SU intradmin
|
echo "$SCREEN -ls" | $SU intradmin | $GREP '[0-9]+\.lerdorf_[a-zA-Z0-9_-]+' |
|
||||||
done
|
while read LINE
|
||||||
|
do
|
||||||
|
SNAME=`echo $LINE | $SED "s/^[^0-9]*([0-9]+\.[^ \t]+).*$/\1/"`
|
||||||
|
echo "$SCREEN -S \"$SNAME\" -X kill" | $SU intradmin
|
||||||
|
done
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
Reference in a new issue