argument('name'); $manager = UpdateManager::instance()->resetNotes(); $pluginDetails = $manager->requestPluginDetails($pluginName); $code = array_get($pluginDetails, 'code'); $hash = array_get($pluginDetails, 'hash'); $this->output->writeln(sprintf('Downloading plugin: %s', $code)); $manager->downloadPlugin($code, $hash); $this->output->writeln(sprintf('Unpacking plugin: %s', $code)); $manager->extractPlugin($code, $hash); /* * Migrate plugin */ $this->output->writeln(sprintf('Migrating plugin...', $code)); PluginManager::instance()->loadPlugins(); $manager->updatePlugin($code); foreach ($manager->getNotes() as $note) { $this->output->writeln($note); } } /** * Get the console command arguments. * @return array */ protected function getArguments() { return [ ['name', InputArgument::REQUIRED, 'The name of the plugin. Eg: AuthorName.PluginName'], ]; } /** * Get the console command options. * @return array */ protected function getOptions() { return []; } }