protected function initDeployManager(Composer $composer, IOInterface $io)
 {
     $this->deployManager = new DeployManager($io);
     $extra = $composer->getPackage()->getExtra();
     $sortPriority = isset($extra['magento-deploy-sort-priority']) ? $extra['magento-deploy-sort-priority'] : array();
     $this->deployManager->setSortPriority($sortPriority);
 }
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     // init repos
     $composer = $this->getComposer();
     $installedRepo = $composer->getRepositoryManager()->getLocalRepository();
     $dm = $composer->getDownloadManager();
     $im = $composer->getInstallationManager();
     /**
      * @var $moduleInstaller \MagentoHackathon\Composer\Magento\Installer
      */
     $moduleInstaller = $im->getInstaller("magento-module");
     $eventManager = new EventManager();
     $deployManager = new DeployManager($eventManager);
     $io = $this->getIo();
     if ($io->isDebug()) {
         $eventManager->listen('pre-package-deploy', function (PackageDeployEvent $event) use($io) {
             $io->write('Start magento deploy for ' . $event->getDeployEntry()->getPackageName());
         });
     }
     $extra = $composer->getPackage()->getExtra();
     $sortPriority = isset($extra['magento-deploy-sort-priority']) ? $extra['magento-deploy-sort-priority'] : array();
     $deployManager->setSortPriority($sortPriority);
     $moduleInstaller->setDeployManager($deployManager);
     foreach ($installedRepo->getPackages() as $package) {
         if ($input->getOption('verbose')) {
             $output->writeln($package->getName());
             $output->writeln($package->getType());
         }
         if ($package->getType() != "magento-module") {
             continue;
         }
         if ($input->getOption('verbose')) {
             $output->writeln("package {$package->getName()} recognized");
         }
         $strategy = $moduleInstaller->getDeployStrategy($package);
         if ($input->getOption('verbose')) {
             $output->writeln("used " . get_class($strategy) . " as deploy strategy");
         }
         $strategy->setMappings($moduleInstaller->getParser($package)->getMappings());
         $deployManagerEntry = new Entry();
         $deployManagerEntry->setPackageName($package->getName());
         $deployManagerEntry->setDeployStrategy($strategy);
         $deployManager->addPackage($deployManagerEntry);
     }
     $deployManager->doDeploy();
     return;
 }
Exemple #3
0
 /**
  * init the DeployManager
  *
  * @param Composer    $composer
  * @param IOInterface $io
  */
 protected function initDeployManager(Composer $composer, IOInterface $io, EventManager $eventManager)
 {
     $this->deployManager = new DeployManager($eventManager);
     $this->deployManager->setSortPriority($this->getSortPriority($composer));
     $this->applyEvents($eventManager);
 }