Пример #1
0
 public function execute($extName, $version = 'stable')
 {
     $logger = $this->getLogger();
     $extensions = array();
     if (Utils::startsWith($extName, '+')) {
         $config = Config::getConfigParam('extensions');
         $extName = ltrim($extName, '+');
         if (isset($config[$extName])) {
             foreach ($config[$extName] as $extensionName => $extOptions) {
                 $args = explode(' ', $extOptions);
                 $extensions[$extensionName] = $this->getExtData($args);
             }
         } else {
             $logger->info('Extension set name not found. Have you configured it at the config.yaml file?');
         }
     } else {
         $args = array_slice(func_get_args(), 1);
         $extensions[$extName] = $this->getExtData($args);
     }
     if ($this->options->{'php-version'} !== null) {
         $phpVersion = Utils::findLatestPhpVersion($this->options->{'php-version'});
         Config::setPhpVersion($phpVersion);
     }
     foreach ($extensions as $extensionName => $extData) {
         $extension = new Extension($extensionName, $logger);
         $extension->install($extData->version, $extData->options);
     }
     Config::useSystemPhpVersion();
 }
Пример #2
0
 public function execute($extname)
 {
     $extension = new Extension($extname, $this->logger);
     $file = $extension->getMeta()->getIniFile();
     $this->logger->info("Looking for {$file} file...");
     if (!file_exists($file)) {
         $file .= '.disabled';
         // try with ini.disabled file
         $this->logger->info("Looking for {$file} file...");
         if (!file_exists($file)) {
             $this->logger->warn("Sorry, I can't find the ini file for the requested extension: \"{$extname}\".");
             return;
         }
     }
     $this->editor($file);
 }
Пример #3
0
 public function execute($extname)
 {
     $extension = new Extension($extname, $this->logger);
     $extension->disable();
 }
Пример #4
0
 /**
  * Disable extensions known to conflict with current one
  */
 public function disableAntagonists()
 {
     $name = $this->meta->getName();
     if (isset($this->conflicts[$name])) {
         $conflicts = $this->conflicts[$name];
         $this->logger->info("===> Applying conflicts resolution (" . implode(', ', $conflicts) . "):");
         foreach ($conflicts as $extension) {
             $e = new Extension($extension, $this->logger);
             $e->disable();
         }
     }
 }