setName('files_external:dependencies') ->setDescription('Show information about the backend dependencies'); parent::configure(); } protected function execute(InputInterface $input, OutputInterface $output): int { $storageBackends = $this->backendService->getBackends(); $anyMissing = false; foreach ($storageBackends as $backend) { if ($backend->getDeprecateTo() !== null) { continue; } $missingDependencies = $backend->checkDependencies(); if ($missingDependencies) { $anyMissing = true; $output->writeln($backend->getText() . ':'); foreach ($missingDependencies as $missingDependency) { if ($missingDependency->getMessage()) { $output->writeln(" - {$missingDependency->getDependency()}: {$missingDependency->getMessage()}"); } else { $output->writeln(" - {$missingDependency->getDependency()}"); } } } } if (!$anyMissing) { $output->writeln('All dependencies are met'); } return self::SUCCESS; } }