You are here

public function InstallerServiceProvider::alter in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Installer/InstallerServiceProvider.php \Drupal\Core\Installer\InstallerServiceProvider::alter()

Modifies existing service definitions.

Parameters

ContainerBuilder $container: The ContainerBuilder whose service definitions can be altered.

Overrides ServiceModifierInterface::alter

File

core/lib/Drupal/Core/Installer/InstallerServiceProvider.php, line 70

Class

InstallerServiceProvider
Service provider for the early installer environment.

Namespace

Drupal\Core\Installer

Code

public function alter(ContainerBuilder $container) {

  // Disable Twig cache (php storage does not exist yet).
  $twig_config = $container
    ->getParameter('twig.config');
  $twig_config['cache'] = FALSE;
  $container
    ->setParameter('twig.config', $twig_config);

  // No service may persist when the early installer kernel is rebooted into
  // the production environment.
  // @todo The DrupalKernel reboot performed by drupal_install_system() is
  //   actually not a "regular" reboot (like ModuleInstaller::install()), so
  //   services are not actually persisted.
  foreach ($container
    ->findTaggedServiceIds('persist') as $id => $tags) {
    $definition = $container
      ->getDefinition($id);
    $definition
      ->clearTag('persist');
  }
}