From d7f07339595d12bb9ac945b1c74fc832b7710f3c Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sat, 2 Apr 2022 13:04:27 +0200 Subject: [PATCH] Detect exec failures in compile script, refs #10693 --- bin/compile | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/bin/compile b/bin/compile index f9156245f..dde5f06b2 100755 --- a/bin/compile +++ b/bin/compile @@ -3,16 +3,28 @@ $cwd = getcwd(); chdir(__DIR__.'/../'); -$ts = rtrim(shell_exec('git log -n1 --pretty=%ct HEAD')); +$ts = rtrim(exec('git log -n1 --pretty=%ct HEAD')); if (!is_numeric($ts)) { echo 'Could not detect date using "git log -n1 --pretty=%ct HEAD"'.PHP_EOL; exit(1); } // Install with the current version to force it having the right ClassLoader version // Install without dev packages to clean up the included classmap from phpunit classes -shell_exec('php bin/composer config autoloader-suffix ComposerPhar' . $ts); -shell_exec('php bin/composer install -q --no-dev'); -shell_exec('php bin/composer config autoloader-suffix --unset'); +exec('php bin/composer config autoloader-suffix ComposerPhar' . $ts, $output, $result); +if (0 !== $result) { + echo 'Could not set the autoloader suffix, make sure exec is allowed and php can be found in your PATH'; + exit(1); +} +exec('php bin/composer install -q --no-dev', $output, $result); +if (0 !== $result) { + echo 'Could not remove dev deps, make sure exec is allowed and php can be found in your PATH'; + exit(1); +} +exec('php bin/composer config autoloader-suffix --unset', $output, $result); +if (0 !== $result) { + echo 'Could not remove the autoloader suffix, make sure exec is allowed and php can be found in your PATH'; + exit(1); +} chdir($cwd); require __DIR__.'/../src/bootstrap.php';