private function createVirtualHost(array $params, $key, Project $project) { $vhost = new VirtualHost(); $vhost->setName($params['name']); $vhost->setServerName($params['name'] . '.' . $project->getVhostName()); $vhost->setDocumentRoot(str_replace('.platform.app.yaml', substr($params['web']['document_root'], 1), $key)); $vhost->setDirectoryIndex(substr($params['web']['passthru'], 1)); $vhost->setProject($project); return $vhost; }
/** * Prepares a process to run and returns it (no execution). * * @param $command * The command with parameters. * @param $serverSuffix * (Optional) The server suffix for identification. * @param string $path * (Optional) The path. * * @return \Symfony\Component\Process\Process * The prepared process to execute. */ private function prepareProcess($command, $serverSuffix = null, $path = null) { $environmentVariables = $this->environmentVariables; if ($serverSuffix) { $environmentVariables += ['SERVER_SUFFIX' => $serverSuffix]; } if ($this->project) { $environmentVariables += ['PROJECT' => $this->project->getShortName(), 'VHOST_NAME' => $this->project->getVhostName(), 'GIT_BRANCH' => $this->gitBranch]; } $process = new Process($command, $path === null ? self::DOCKER_COMPOSE_FILE_PATH : $path, $environmentVariables); $process->setTty(true); $process->setTimeout(null); $process->setIdleTimeout(null); return $process; }
/** * {@inheritdoc} */ protected function getData() { return [Project::FIELD_NAME => $this->project->getFullName(), Project::FIELD_SHORT_NAME => $this->project->getShortName(), Project::FIELD_REPOSITORY_URL => $this->project->getGitRepositoryUrl(), Project::FIELD_VHOST_NAME => $this->project->getVhostName()]; }