Manteniamo la nostra cache di documentazione in redis e usiamo capistrano per la distribuzione. Tutto funziona bene finché non dobbiamo rimuovere un campo sull'entità.Cancellare la cache di doctrine in redis su deploy
Quando dopo l'installazione comandi compositore sono eseguite otteniamo errore del tipo:
[ReflectionException] ** [out Società Immobiliari \ PlayerRecord :: $ shirtNumber non esiste
$shirtNumber
è il campo che abbiamo rimosso. Per poter continuare, è sufficiente cancellare la cache di dottrina ma, poiché si trova nel database redis, la cache è condivisa con la produzione.
La domanda è come è possibile modificare dinamicamente le impostazioni di connessione per i redis su ciascuna distribuzione? Le uniche idee che mi vengono in mente sono:
- modificare parameters.yml su inizio della distribuzione variabile d'ambiente
- uso che cambierà ad ogni distribuire
- mossa Redis impostazioni di connessione a un altro file che creerà un link simbolico a una delle configurazioni
Avete altre idee o quale è meglio secondo voi?
Questo problema è stato segnalato in http: //www.doctrine-project. org/jira/browse/DDC-3230 ma non è stato ancora risolto –