public function onInstallReleaseExecuteComposerInstall(InstallReleaseEvent $event, $eventName, EventDispatcherInterface $eventDispatcher)
    {
        $release = $event->getRelease();
        $host = $release->getWorkspace()->getHost();
        $connection = $this->ensureConnection($host);

        $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::NOTICE, 'Installing Composer dependencies.', $eventName, $this, array('event.task.action' => TaskInterface::ACTION_IN_PROGRESS)));

        $authenticationFile = $release->getPath().'/auth.json';
        if (empty($this->authentication) === false) {
            $connection->putContents($authenticationFile, json_encode($this->authentication));
        }

        $connection->changeWorkingDirectory($host->getPath());
        $result = $connection->executeCommand(sprintf('php composer.phar install --no-interaction --working-dir="%s" --no-dev --no-scripts --optimize-autoloader', $release->getPath()));

        if ($connection->isFile($authenticationFile)) {
            $connection->delete($authenticationFile);
        }

        if ($result->isSuccessful()) {
            $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::NOTICE, 'Installed Composer dependencies.', $eventName, $this, array('event.task.action' => TaskInterface::ACTION_COMPLETED, 'output.resetLine' => true)));
            $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::DEBUG, "{separator} Command output:{separator}\n{command.result}{separator}", $eventName, $this, array('command.result' => $result->getOutput(), 'separator' => "\n=================\n")));
        } else {
            throw new TaskCommandExecutionException('Failed installing Composer dependencies.', $result, $this);
        }
    }
public function onInstallReleaseExecuteComposerInstall(InstallReleaseEvent $event, $eventName, EventDispatcherInterface $eventDispatcher)
    {
        $release = $event->getRelease();
        $host = $release->getWorkspace()->getHost();
        $connection = $this->ensureConnection($host);

        $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::NOTICE, 'Installing Composer dependencies.', $eventName, $this, array('event.task.action' => TaskInterface::ACTION_IN_PROGRESS)));

        $authenticationFile = $release->getPath().'/auth.json';
        if (empty($this->authentication) === false) {
            $connection->putContents($authenticationFile, json_encode($this->authentication));
        }

        $connection->changeWorkingDirectory($host->getPath());
        $result = $connection->executeCommand(sprintf('php composer.phar install --no-interaction --working-dir="%s" --no-dev --no-scripts --optimize-autoloader', $release->getPath()));

        if ($connection->isFile($authenticationFile)) {
            $connection->delete($authenticationFile);
        }

        if ($result->isSuccessful()) {
            $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::NOTICE, 'Installed Composer dependencies.', $eventName, $this, array('event.task.action' => TaskInterface::ACTION_COMPLETED, 'output.resetLine' => true)));
            $eventDispatcher->dispatch(AccompliEvents::LOG, new LogEvent(LogLevel::DEBUG, "{separator} Command output:{separator}\n{command.result}{separator}", $eventName, $this, array('command.result' => $result->getOutput(), 'separator' => "\n=================\n")));
        } else {
            throw new TaskCommandExecutionException('Failed installing Composer dependencies.', $result, $this);
        }
    }
public function onInstallReleaseExecuteComposerInstall ( InstallReleaseEvent $ event , $ eventName , EventDispatcherInterface $ eventDispatcher ) { $ release = $ event -> getRelease ( ) ; $ host = $ release -> getWorkspace ( ) -> getHost ( ) ; $ connection = $ this -> ensureConnection ( $ host ) ; $ eventDispatcher -> dispatch ( AccompliEvents :: LOG , new LogEvent ( LogLevel :: NOTICE , 'Installing Composer dependencies.' , $ eventName , $ this , array ( 'event.task.action' => TaskInterface :: ACTION_IN_PROGRESS ) ) ) ; $ authenticationFile = $ release -> getPath ( ) . '/auth.json' ; if ( empty ( $ this -> authentication ) === false ) { $ connection -> putContents ( $ authenticationFile , json_encode ( $ this -> authentication ) ) ; } $ connection -> changeWorkingDirectory ( $ host -> getPath ( ) ) ; $ result = $ connection -> executeCommand ( sprintf ( 'php composer.phar install --no-interaction --working-dir="%s" --no-dev --no-scripts --optimize-autoloader' , $ release -> getPath ( ) ) ) ; if ( $ connection -> isFile ( $ authenticationFile ) ) { $ connection -> delete ( $ authenticationFile ) ; } if ( $ result -> isSuccessful ( ) ) { $ eventDispatcher -> dispatch ( AccompliEvents :: LOG , new LogEvent ( LogLevel :: NOTICE , 'Installed Composer dependencies.' , $ eventName , $ this , array ( 'event.task.action' => TaskInterface :: ACTION_COMPLETED , 'output.resetLine' => true ) ) ) ; $ eventDispatcher -> dispatch ( AccompliEvents :: LOG , new LogEvent ( LogLevel :: DEBUG , "{separator} Command output:{separator}\n{command.result}{separator}" , $ eventName , $ this , array ( 'command.result' => $ result -> getOutput ( ) , 'separator' => "\n=================\n" ) ) ) ; } else { throw new TaskCommandExecutionException ( 'Failed installing Composer dependencies.' , $ result , $ this ) ; } }
Runs the Composer install command to install the dependencies for the release.

@param InstallReleaseEvent      $event
@param string                   $eventName
@param EventDispatcherInterface $eventDispatcher

@throws TaskRuntimeException
Runs the Composer install command to install the dependencies for the release .