Пример #1
0
 /**
  * @param InputInterface $input
  * @param OutputInterface $output
  * @return int|null|void
  */
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     parent::bootstrapProcessWire($output);
     if (!\ProcessWire\wire('config')->moduleServiceKey) {
         throw new \RuntimeException('No module service key was found.');
     }
     if ($input->getArgument('modules') && !$input->getOption('check')) {
         // upgrade specific modules
         $modules = explode(",", $input->getArgument('modules'));
         if ($modules) {
             $this->upgradeModules($modules, $output);
         }
     } else {
         \ProcessWire\wire('modules')->resetCache();
         if ($moduleVersions = parent::getModuleVersions(true, $output)) {
             $output->writeln("<info>An upgrade is available for:</info>");
             foreach ($moduleVersions as $name => $info) {
                 $output->writeln("  - {$name}: {$info['local']} -> {$info['remote']}");
             }
         } else {
             $output->writeln("<info>Your modules are up-to-date.</info>");
         }
     }
 }