Rozdielne configu pre production a development
- iNviNho
- Člen | 352
Ahojte,
podľa dokumentácie skúšam rozdeliť v .bootstrap.php načítanie configu. Respektíve chcem, aby na produkčnom servery to načítalo iný konfig ako na vývojárskom.
<?php
$configurator->addConfig(__DIR__ . '/config/config.local.production.neon', $configurator::PRODUCTION);
$configurator->addConfig(__DIR__ . '/config/config.local.development.neon', $configurator::DEVELOPMENT);
$configurator->addConfig(__DIR__ . '/config/config.neon');
?>
Nefunguje to, lebo tam taká konstanta nie je. Viete mi poradiť ako v jednoduchosti takéto niečo docieliť?
Ďakujem :)
- Pavel Kravčík
- Člen | 1195
Nejjednodušší je mít na produkci config.local.neon a u sebe taky config.local.neon. Akorát oba obsahují něco jiného. :)
- CZechBoY
- Člen | 3608
Variant je několik. Otázkou je, jestli chceš mít na produkci údaje z developmentu (pokud ty servery jsou třeba veřejně přístupný tak to není dobrej nápad).
Já používám variantu jak píše @PavelKravčík, kdy existuje jen jeden konfigurák citlivých údajů na serveru. To, že se jmenujou jinak je už spíš jen kvůli gitu, aby se to furt nepřepisovalo. Do produkce jde potom config.local.prod.neon.
Pak je možnost rozdělit konfigurák pomocí $configurator->addConfig(‚config.local.neon‘, Configurator::Auto), kdy můžeš použít jakousi podmínku production a development.
main:
database:
...
production < main:
database:
...2
development <main:
database:
...3
Potom můžeš použít podmíněný přidávání konfiguráku podle režimu:
if ($configurator->isDebugMode()) {
$configurator->addConfig('config.local.dev.neon');
} else {
$configurator->addConfig('config.local.prod.neon');
}
ale furt budeš mít dva soubory na produkci i developmentu. Nebo bys musel ošéfovat, aby na produkci byl jen produkční režim a jen produkční config.
- Pavel Kravčík
- Člen | 1195
CZechBoY napsal(a):
To, že se jmenujou jinak je už spíš jen kvůli gitu, aby se to furt nepřepisovalo. Do produkce jde potom config.local.prod.neon.
Ano, ve verzovacím systému můžeš mít několik souborů (prod, test, devel, prod_new_server) a při nasazování ho jen přejmenuješ.
- Oli
- Člen | 1215
@iNviNho použij https://github.com/…p-deployment. Tam si vyignoruješ ktery soubory nechces. Takhle to resime my. Máme 3 konfigy (production, beta, local) a pro kazdy prostredi se nahraje jen to co tam ma byt.