mirror of
https://github.com/quentin-g-dev/afup.git
synced 2026-03-24 09:12:16 +01:00
Actuellement les migrations phinx sont lancées à la main. Il y avait un problème, à chaque fois il fallait passer l'environnement à prod dans le fichier de config, vu qu'il était lancé en dev pour récupérer les infos de connexion à la base. On évite donc cela en créant bien des configurations de production et de développement (pour vérifier si on est en environnement de dev, le seul moyen trouvé à été de vérifier si un fes fichiers lodés seulement en dev est présent). Comme cela la commande de migration pourra être lancée sans modification, et on va pouvoir lancer automatiquement ces migrations lors du déploiement automatisé (ça a tourné suffisament de fois à la main).
45 lines
1.4 KiB
PHP
45 lines
1.4 KiB
PHP
<?php
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
$environments = [
|
|
'default_migration_table' => 'phinxlog',
|
|
];
|
|
|
|
if (is_file(__DIR__ . '/vendor/sensio/generator-bundle/composer.json')) {
|
|
$kernelDev = new AppKernel('dev', true);
|
|
$kernelDev->boot();
|
|
$containerDev = $kernelDev->getContainer();
|
|
$environments['development'] = [
|
|
'adapter' => 'mysql',
|
|
'host' => $containerDev->getParameter('database_host'),
|
|
'name' => $containerDev->getParameter('database_name'),
|
|
'user' => $containerDev->getParameter('database_user'),
|
|
'pass' => $containerDev->getParameter('database_password'),
|
|
'port' => $containerDev->getParameter('database_port'),
|
|
'charset' => 'utf8mb4',
|
|
];
|
|
}
|
|
|
|
$kernelProd = new AppKernel('prod', true);
|
|
$kernelProd->boot();
|
|
$containerProd = $kernelProd->getContainer();
|
|
|
|
$environments['production'] = [
|
|
'adapter' => 'mysql',
|
|
'host' => $containerProd->getParameter('database_host'),
|
|
'name' => $containerProd->getParameter('database_name'),
|
|
'user' => $containerProd->getParameter('database_user'),
|
|
'pass' => $containerProd->getParameter('database_password'),
|
|
'port' => $containerProd->getParameter('database_port'),
|
|
'charset' => 'utf8mb4',
|
|
];
|
|
|
|
return [
|
|
'paths' => [
|
|
'migrations' => __DIR__ . '/db/migrations',
|
|
'seeds' => __DIR__ . '/db/seeds',
|
|
],
|
|
'environments' => $environments,
|
|
];
|