mirror of
https://github.com/flarum/core.git
synced 2025-07-25 18:51:40 +02:00
chore(package-manager): config composer to use web php version
Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
This commit is contained in:
@@ -9,6 +9,7 @@
|
|||||||
|
|
||||||
namespace Flarum\PackageManager\Composer;
|
namespace Flarum\PackageManager\Composer;
|
||||||
|
|
||||||
|
use Composer\Config;
|
||||||
use Composer\Console\Application;
|
use Composer\Console\Application;
|
||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
use Flarum\PackageManager\OutputLogger;
|
use Flarum\PackageManager\OutputLogger;
|
||||||
@@ -70,4 +71,9 @@ class ComposerAdapter
|
|||||||
|
|
||||||
return new ComposerOutput($exitCode, $output);
|
return new ComposerOutput($exitCode, $output);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function setPhpVersion(string $phpVersion)
|
||||||
|
{
|
||||||
|
Config::$defaultConfig['platform']['php'] = $phpVersion;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -11,6 +11,7 @@ namespace Flarum\PackageManager\Job;
|
|||||||
|
|
||||||
use Flarum\Bus\Dispatcher;
|
use Flarum\Bus\Dispatcher;
|
||||||
use Flarum\PackageManager\Command\BusinessCommandInterface;
|
use Flarum\PackageManager\Command\BusinessCommandInterface;
|
||||||
|
use Flarum\PackageManager\Composer\ComposerAdapter;
|
||||||
use Flarum\Queue\AbstractJob;
|
use Flarum\Queue\AbstractJob;
|
||||||
use Illuminate\Queue\Middleware\WithoutOverlapping;
|
use Illuminate\Queue\Middleware\WithoutOverlapping;
|
||||||
use Throwable;
|
use Throwable;
|
||||||
@@ -23,11 +24,11 @@ class ComposerCommandJob extends AbstractJob
|
|||||||
protected $command;
|
protected $command;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var int[]
|
* @var string
|
||||||
*/
|
*/
|
||||||
protected $phpVersion;
|
protected $phpVersion;
|
||||||
|
|
||||||
public function __construct(BusinessCommandInterface $command, array $phpVersion)
|
public function __construct(BusinessCommandInterface $command, string $phpVersion)
|
||||||
{
|
{
|
||||||
$this->command = $command;
|
$this->command = $command;
|
||||||
$this->phpVersion = $phpVersion;
|
$this->phpVersion = $phpVersion;
|
||||||
@@ -36,12 +37,7 @@ class ComposerCommandJob extends AbstractJob
|
|||||||
public function handle(Dispatcher $bus)
|
public function handle(Dispatcher $bus)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
if ([PHP_MAJOR_VERSION, PHP_MINOR_VERSION] !== [$this->phpVersion[0], $this->phpVersion[1]]) {
|
ComposerAdapter::setPhpVersion($this->phpVersion);
|
||||||
$webPhpVersion = implode('.', $this->phpVersion);
|
|
||||||
$sshPhpVersion = implode('.', [PHP_MAJOR_VERSION, PHP_MINOR_VERSION]);
|
|
||||||
|
|
||||||
throw new \Exception("PHP version mismatch. SSH PHP version must match web server PHP version. Found SSH (PHP $sshPhpVersion) and Web Server (PHP $webPhpVersion).");
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->command->task->start();
|
$this->command->task->start();
|
||||||
|
|
||||||
|
@@ -73,7 +73,7 @@ class Dispatcher
|
|||||||
$command->task = $task;
|
$command->task = $task;
|
||||||
|
|
||||||
$this->queue->push(
|
$this->queue->push(
|
||||||
new ComposerCommandJob($command, [PHP_MAJOR_VERSION, PHP_MINOR_VERSION])
|
new ComposerCommandJob($command, PHP_VERSION)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$data = $this->bus->dispatch($command);
|
$data = $this->bus->dispatch($command);
|
||||||
|
Reference in New Issue
Block a user