From 599ab2314755c096f6d8df9373a935d3a9288e1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Jusi=C4=99ga?= Date: Wed, 1 Jan 2020 21:35:40 +0100 Subject: [PATCH 1/2] Symfony 5 parameter fix --- Command/DoctrineCommand.php | 2 +- DependencyInjection/Configuration.php | 2 +- Tests/DependencyInjection/DoctrineMigrationsExtensionTest.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Command/DoctrineCommand.php b/Command/DoctrineCommand.php index 977bebe8..6aba99a7 100644 --- a/Command/DoctrineCommand.php +++ b/Command/DoctrineCommand.php @@ -45,7 +45,7 @@ public static function configureMigrations(ContainerInterface $container, Config $configuration->setMigrationsDirectory($dir); } else { // class Kernel has method getKernelParameters with some of the important path parameters - $pathPlaceholderArray = ['kernel.root_dir', 'kernel.cache_dir', 'kernel.logs_dir']; + $pathPlaceholderArray = ['kernel.project_dir', 'kernel.cache_dir', 'kernel.logs_dir']; foreach ($pathPlaceholderArray as $pathPlaceholder) { if (! $container->hasParameter($pathPlaceholder) || ! preg_match('/\%' . $pathPlaceholder . '\%/', $dir)) { diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index c7adbdbf..c3da958b 100644 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -41,7 +41,7 @@ public function getConfigTreeBuilder() : TreeBuilder $rootNode ->children() - ->scalarNode('dir_name')->defaultValue('%kernel.root_dir%/DoctrineMigrations')->cannotBeEmpty()->end() + ->scalarNode('dir_name')->defaultValue('%kernel.project_dir%/DoctrineMigrations')->cannotBeEmpty()->end() ->scalarNode('namespace')->defaultValue('Application\Migrations')->cannotBeEmpty()->end() ->scalarNode('table_name')->defaultValue('migration_versions')->cannotBeEmpty()->end() ->scalarNode('column_name')->defaultValue('version')->end() diff --git a/Tests/DependencyInjection/DoctrineMigrationsExtensionTest.php b/Tests/DependencyInjection/DoctrineMigrationsExtensionTest.php index 23c46ff1..d63dcdff 100644 --- a/Tests/DependencyInjection/DoctrineMigrationsExtensionTest.php +++ b/Tests/DependencyInjection/DoctrineMigrationsExtensionTest.php @@ -35,7 +35,7 @@ private function getContainer() : ContainerBuilder 'kernel.bundles' => [], 'kernel.cache_dir' => sys_get_temp_dir(), 'kernel.environment' => 'test', - 'kernel.root_dir' => __DIR__ . '/../../', // src dir + 'kernel.project_dir' => __DIR__ . '/../../', // src dir ])); } } From 050434994d1fd41543c5b8bb7504061539449946 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Jusi=C4=99ga?= Date: Thu, 16 Jan 2020 17:54:55 +0100 Subject: [PATCH 2/2] Add doctrine.migrations.dir parameter --- DependencyInjection/Configuration.php | 2 +- DependencyInjection/DoctrineMigrationsExtension.php | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index c3da958b..b5d3ff11 100644 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -41,7 +41,7 @@ public function getConfigTreeBuilder() : TreeBuilder $rootNode ->children() - ->scalarNode('dir_name')->defaultValue('%kernel.project_dir%/DoctrineMigrations')->cannotBeEmpty()->end() + ->scalarNode('dir_name')->defaultValue('%doctrine.migrations.dir%')->cannotBeEmpty()->end() ->scalarNode('namespace')->defaultValue('Application\Migrations')->cannotBeEmpty()->end() ->scalarNode('table_name')->defaultValue('migration_versions')->cannotBeEmpty()->end() ->scalarNode('column_name')->defaultValue('version')->end() diff --git a/DependencyInjection/DoctrineMigrationsExtension.php b/DependencyInjection/DoctrineMigrationsExtension.php index 4a0e923c..192ca70a 100644 --- a/DependencyInjection/DoctrineMigrationsExtension.php +++ b/DependencyInjection/DoctrineMigrationsExtension.php @@ -23,6 +23,12 @@ public function load(array $configs, ContainerBuilder $container) : void { $configuration = new Configuration(); + if ($container->hasParameter('kernel.root_dir')) { + $container->setParameter('doctrine.migrations.dir', '%kernel.root_dir%/DoctrineMigrations'); + } else { + $container->setParameter('doctrine.migrations.dir', '%kernel.project_dir%/src/Migrations'); + } + $config = $this->processConfiguration($configuration, $configs); foreach ($config as $key => $value) {