/** * {@inheritdoc} */ public function run(InstallContext $context) { $this->userInteraction = $context->getUserInteraction(); $this->processRunner = $context->getProcessRunner(); $boot2docker = new Boot2DockerCli($this->processRunner); if ($boot2docker->isInstalled()) { $this->userInteraction->writeTitle('Boot2Docker seems to be installed, removing it.'); if (!$boot2docker->uninstall()) { $this->userInteraction->writeTitle('Something went wrong while uninstalling Boot2Docker, continuing anyway.'); } else { $this->userInteraction->writeTitle('Successfully uninstalled boot2docker'); } } $dinghy = new DinghyCli($context->getProcessRunner()); if (!$dinghy->isInstalled()) { $this->userInteraction->writeTitle('Installing Dinghy'); $this->installDinghy(); $this->userInteraction->writeTitle('Successfully installed Dinghy'); } else { $this->userInteraction->writeTitle('Dinghy already installed, skipping.'); } $this->changeDinghyDnsResolverNamespace(); $this->userInteraction->writeTitle('Starting up Dinghy'); if (!$dinghy->isRunning()) { $dinghy->start(); $this->userInteraction->writeTitle('Started Dinghy'); } else { $this->userInteraction->writeTitle('Dinghy already started'); } if (!$this->haveDinghyEnvironmentVariables()) { $this->userInteraction->writeTitle('Setting up dinghy environment variables'); $this->setupDinghyEnvironmentVariables(); } }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $userInteraction = new ConsoleUserInteraction($input, $output); $processRunner = new InteractiveProcessRunner($userInteraction); $dingly = new DinghyCli($processRunner); if ($dingly->isRunning()) { $dingly->stop(); } $dingly->start(); }