Add symfony 4 configuration loading when bootstrap is null; tweaked formatting, naming, tests and readme

This commit is contained in:
Adrian Zmenda
2018-08-10 17:56:50 +02:00
parent 141074a24e
commit 149d41087f
3 changed files with 40 additions and 14 deletions

View File

@@ -122,8 +122,9 @@ final class SymfonyExtension implements Extension
->children()
->scalarNode('env_file')->end()
->arrayNode('kernel')
->addDefaultsIfNotSet()
->children()
->scalarNode('bootstrap')->end()
->scalarNode('bootstrap')->defaultFalse()->end()
->scalarNode('path')->end()
->scalarNode('class')->end()
->scalarNode('env')->end()
@@ -165,15 +166,17 @@ final class SymfonyExtension implements Extension
* @param array $userConfig
* @return array
*/
private function autoconfigure(ContainerBuilder $container, array $userConfig) {
private function autoconfigure(ContainerBuilder $container, array $userConfig): array
{
$defaults = self::SYMFONY_DEFAULTS;
$symfony4KernelPath = sprintf('%s/%s', $container->getParameter('paths.base'), self::SYMFONY_4_DEFAULTS['kernel']['path']);
if (file_exists($symfony4KernelPath)) {
$symfonyFourKernelPath = sprintf('%s/%s', $container->getParameter('paths.base'), self::SYMFONY_4_DEFAULTS['kernel']['path']);
if ($userConfig['kernel']['bootstrap'] === null || file_exists($symfonyFourKernelPath)) {
$defaults = self::SYMFONY_4_DEFAULTS;
}
$userConfig['kernel']['bootstrap'] = $userConfig['kernel']['bootstrap'] === false ? null : $userConfig['kernel']['bootstrap'];
$config = array_replace_recursive($defaults, $userConfig);
if (null !== $config['env_file']) {