modular composer requirements aborts if missing
This commit is contained in:
@@ -2,6 +2,10 @@
|
||||
|
||||
namespace App\Modules;
|
||||
|
||||
use App\Modules\Core\ModulePackage;
|
||||
use App\Modules\Core\ModulePackageType;
|
||||
use Composer\Composer;
|
||||
use Composer\InstalledVersions;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
use Illuminate\Support\ServiceProvider;
|
||||
use Illuminate\Support\Str;
|
||||
@@ -57,9 +61,25 @@ class ModuleServiceProvider extends ServiceProvider
|
||||
*/
|
||||
public function verifyModuleComposerRequirements(BaseModule $module): void
|
||||
{
|
||||
// foreach ($module->app->getComposerRequirements() as $requirement) {
|
||||
foreach ($module->app->getComposerRequirements() as $package) {
|
||||
if ($package->type === ModulePackageType::PACKAGE) {
|
||||
if (! InstalledVersions::isInstalled($package->name)) {
|
||||
abort(
|
||||
code: 500,
|
||||
message: "{$package->name} must be installed (module: {$module->name})"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// }
|
||||
if ($package->type === ModulePackageType::MODULE) {
|
||||
if (! module_exists($package->name)) {
|
||||
abort(
|
||||
code: 500,
|
||||
message: "{$package->name} module must be installed (module: {$module->name})"
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user