Merge pull request #297 from zhamao-robot/fix-plugin-install-cmd-bugs

修复插件安装命令若干问题
This commit is contained in:
sunxyw 2023-02-11 20:05:07 +08:00 committed by GitHub
commit a443dc77f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7,6 +7,7 @@ namespace ZM\Command\Plugin;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use ZM\Exception\FileSystemException;
use ZM\Plugin\PluginManager;
use ZM\Store\FileSystem;
use ZM\Utils\ZMRequest;
@ -63,6 +64,12 @@ class PluginInstallCommand extends PluginCommand
}
}
$this->info('正在从 ' . $addr . ' 克隆插件仓库');
try {
FileSystem::createDir($plugin_dir);
} catch (FileSystemException $exception) {
$this->error("无法创建插件目录 {$plugin_dir}{$exception->getMessage()}");
return static::FAILURE;
}
passthru('cd ' . escapeshellarg($plugin_dir) . ' && git clone --depth=1 ' . escapeshellarg($addr) . ' ' . $name, $code);
if ($code !== 0) {
$this->error('无法从指定 Git 地址拉取项目,请检查地址名是否正确');
@ -91,7 +98,7 @@ class PluginInstallCommand extends PluginCommand
// 使用内建 Composer
if (file_exists(WORKING_DIR . '/runtime/composer.phar')) {
$this->info('使用内建 Composer');
passthru('php ' . escapeshellarg(WORKING_DIR . '/runtime/composer.phar') . ' install --no-dev', $code);
passthru(PHP_BINARY . ' ' . escapeshellarg(WORKING_DIR . '/runtime/composer.phar') . ' install --no-dev', $code);
} else {
$this->info('使用系统 Composer');
passthru('composer install --no-dev', $code);