Ajouter les migrations avant l'arrivée en production #214

Closed
opened 2019-01-13 14:30:06 +01:00 by delobell · 5 comments
delobell commented 2019-01-13 14:30:06 +01:00 (Migrated from git.eleves.ens.fr)

On souhaiterait éviter de se rendre compte au moment d'upgrade GC en prod que des migrations sont manquantes.

On voit quelques solutions avec @mpepin :

  • une étape de CI qui échoue si des migrations sont manquantes,
  • une étape de CI pour ajouter les migrations manquantes (les créer et les committer).

Faut voir à quelle étape ce serait fait, par exemple :

  • lors d'un merge master → production,
  • lors d'un merge XXX → master,
  • ou les deux.

Pour la seconde variante (ajouter les migrations manquantes), ça serait fait après le merge sur la branche cible.

Le faire seulement lors de master → production peut poser problème pour la (future) CD de dev.cof.
Au pire, dev.cof "tombera" (pour les vues utilisant des modèles dont le schéma en DB a changé). Est-ce bien grave ?

On souhaiterait éviter de se rendre compte au moment d'upgrade GC en prod que des migrations sont manquantes. On voit quelques solutions avec @mpepin : - une étape de CI qui échoue si des migrations sont manquantes, - une étape de CI pour ajouter les migrations manquantes (les créer et les committer). Faut voir à quelle étape ce serait fait, par exemple : - lors d'un merge master → production, - lors d'un merge XXX → master, - ou les deux. Pour la seconde variante (ajouter les migrations manquantes), ça serait fait après le merge sur la branche cible. Le faire seulement lors de master → production peut poser problème pour la (future) CD de dev.cof. Au pire, dev.cof "tombera" (pour les vues utilisant des modèles dont le schéma en DB a changé). Est-ce bien grave ?
mpepin commented 2019-01-13 16:15:52 +01:00 (Migrated from git.eleves.ens.fr)

Motivation

Récemment en passant en prod j'ai eu un message de Django qui me disait de lancer makemigrations. On était passé à côté en local car lancer les migrations une fois (depuis un bdd vide) ne déclenchait pas le message d'erreur…

## Motivation Récemment en passant en prod j'ai eu un message de Django qui me disait de lancer `makemigrations`. On était passé à côté en local car lancer les migrations une fois (depuis un bdd vide) ne déclenchait pas le message d'erreur…
mpepin commented 2019-01-13 16:18:45 +01:00 (Migrated from git.eleves.ens.fr)

Je préfère que la CI féchoue si la migration manque plutôt qu'elle la crée et la commit toute seule.

Je pense que c'est bien de vérifier tout le temps qu'aucune migration ne manque (ou au moins sur les MR XXX → master), pas uniquement quand on bascule sur la branche de prod

Je préfère que la CI féchoue si la migration manque plutôt qu'elle la crée et la commit toute seule. Je pense que c'est bien de vérifier tout le temps qu'aucune migration ne manque (ou au moins sur les MR XXX → master), pas uniquement quand on bascule sur la branche de prod
mpepin commented 2019-10-06 20:50:57 +02:00 (Migrated from git.eleves.ens.fr)

mentioned in merge request !373

mentioned in merge request !373
lstephan commented 2019-10-16 19:55:30 +02:00 (Migrated from git.eleves.ens.fr)

closed via merge request !373

closed via merge request !373
lstephan commented 2019-10-16 19:55:30 +02:00 (Migrated from git.eleves.ens.fr)

mentioned in commit 8ccaf8beaf

mentioned in commit 8ccaf8beaf5c06915bdfd9bf725c1eb01ec8691e
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: DGNum/gestioCOF#214
No description provided.