* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Bundle\FrameworkBundle\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; /** * Warmup the cache. * * @author Fabien Potencier */ class CacheWarmupCommand extends ContainerAwareCommand { /** * @see Command */ protected function configure() { $this ->setName('cache:warmup') ->setDefinition(array( new InputOption('no-optional-warmers', '', InputOption::VALUE_NONE, 'Skip optional cache warmers (faster)'), )) ->setDescription('Warms up an empty cache') ->setHelp(<<%command.name% command warms up the cache. Before running this command, the cache must be empty. EOF ) ; } /** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $kernel = $this->getContainer()->get('kernel'); $output->writeln(sprintf('Warming up the cache for the %s environment with debug %s', $kernel->getEnvironment(), var_export($kernel->isDebug(), true))); $warmer = $this->getContainer()->get('cache_warmer'); if (!$input->getOption('no-optional-warmers')) { $warmer->enableOptionalWarmers(); } $warmer->warmUp($this->getContainer()->getParameter('kernel.cache_dir')); } }