1
0
Fork 0
mirror of synced 2024-06-09 14:24:44 +12:00

Make untarring the code file a blocking task

This commit is contained in:
Bradley Schofield 2021-07-22 11:08:08 +01:00
parent f388c44e20
commit ca3d677596

View file

@ -425,15 +425,24 @@ class FunctionsV1 extends Worker
" --workdir /usr/local/src".
" ".\implode(" ", $vars).
" {$runtime['image']}".
" sh -c 'mv /tmp/code.tar.gz /usr/local/src/code.tar.gz && tar -zxf /usr/local/src/code.tar.gz --strip 1 && rm /usr/local/src/code.tar.gz && tail -f /dev/null'"
" tail -f /dev/null"
, '', $stdout, $stderr, 30);
$executionEnd = \microtime(true);
if($exitCode !== 0) {
throw new Exception('Failed to create function environment: '.$stderr);
}
$exitCodeUntar = Console::execute("docker exec ".
$container.
" sh -c 'mv /tmp/code.tar.gz /usr/local/src/code.tar.gz && tar -zxf /usr/local/src/code.tar.gz --strip 1 && rm /usr/local/src/code.tar.gz'"
, '', $stdout, $stderr, 60);
if($exitCodeUntar !== 0) {
throw new Exception('Failed to extract tar: '.$stderr);
}
$executionEnd = \microtime(true);
$list[$container] = [
'name' => $container,
'online' => true,