protected function doExecute()
{
$this->registry = $this->container->get('bldr.registry.job');
$this->builder = $this->container->get('bldr.builder');
$profileName = $this->input->getArgument('profile') ?: 'default';
$this->output->writeln(["\n", Application::$logo, "\n"]);
$profile = $this->getProfile($profileName);
$projectFormat = [];
if ($this->container->getParameter('name') !== '') {
$projectFormat[] = sprintf("Building the '%s' project", $this->container->getParameter('name'));
}
if ($this->container->getParameter('description') !== '') {
$projectFormat[] = sprintf(" - %s - ", $this->container->getParameter('description'));
}
$profileFormat = [sprintf("Using the '%s' profile", $profileName)];
if (!empty($profile['description'])) {
$profileFormat[] = sprintf(" - %s - ", $profile['description']);
}
$this->output->writeln(["", $projectFormat === [] ? '' : $this->formatBlock($projectFormat, 'blue', 'black'), "", $this->formatBlock($profileFormat, 'blue', 'black'), ""]);
$this->fetchJobs($profile);
$this->builder->runJobs($this->registry);
$this->output->writeln(['', $this->formatBlock('Build Success!', 'green', 'white', true), '']);
}