Projet

Général

Profil

Development #5703

Rendre le settings configurable

Ajouté par Jérôme Schneider il y a plus de 9 ans. Mis à jour il y a plus de 9 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Jérôme Schneider
Catégorie:
-
Version cible:
-
Début:
15 octobre 2014
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Pour le moment on ne peut quasiment rien configurer dans le settings, il n'y a seulement que quelques rares variables qui sont configurables via des variables d'environement.

Au lieu de partir sur des variables d'environement je pense que le mieux serait de reprendre la même façon de faire le settings que sur passerelle et de gérer la configuration dans un fichier python sélectionné soit avec une variable d’environnement soit avec une option du manage.py
Avant de proposer un patch je veux bien qu'on me valide cette façon de faire.


Fichiers

Révisions associées

Révision cee7c0d2 (diff)
Ajouté par Jérôme Schneider il y a plus de 9 ans

settings: use new method to manage settings

Closes #5703

Historique

#1

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Je valide; on a déjà dit qu'on migrait tout sur ce modèle.

#2

Mis à jour par Jérôme Schneider il y a plus de 9 ans

#3

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Il y a encore des bouts de configuration pour les tenants dans default_settings, il faudrait les déplacer dans tenant_settings non ?

#4

Mis à jour par Jérôme Schneider il y a plus de 9 ans

  • Fichier 0001-settings-use-new-method-to-manage-settings.patch ajouté

Ce nouveau patch enlève les bouts sur les tenants dans le default_settings et j'ai également essayé d'avoir un tenant_settings.py plus proche de celui de passerelle. J'ai également enlevé le code pour le local_settings.

#5

Mis à jour par Jérôme Schneider il y a plus de 9 ans

  • Fichier 0001-settings-use-new-method-to-manage-settings.patch supprimé
#7

Mis à jour par Jérôme Schneider il y a plus de 9 ans

  • Statut changé de Nouveau à En cours
#8

Mis à jour par Jérôme Schneider il y a plus de 9 ans

Un nouveau patch qui intègre les modifications du manage.py de passerelle (#5752).

#9

Mis à jour par Thomas Noël il y a plus de 9 ans

en relisant, je préfère qu'on fasse tout pareil que passerelle (avec la même "magie" et les mêmes bogues éventuels ;) ):

  • il manque le
    DATABASES['default']['ENGINE'] = 'tenant_schemas.postgresql_backend' 
    à la fin de tenant_settings.py
  • dans le manage il faut faire un if config_file: pour ne pas mettre de variable d'environnement inutile si y'a pas de config_file
  • je vois aussi un os.environ.get('MULTITENANT_TEMPLATE_DIRS', '.'), certainement à flinguer ?
#10

Mis à jour par Jérôme Schneider il y a plus de 9 ans

Nouveau patch pour les trois points suivants.

Thomas Noël a écrit :

en relisant, je préfère qu'on fasse tout pareil que passerelle (avec la même "magie" et les mêmes bogues éventuels ;) ):

  • il manque le [...] à la fin de tenant_settings.py

Ce n'était pas vraiment un manque mais je n'avais pas fait comme passerelle. J'avais supprimé cette magie en demandant explicitement un tenant_schemas.postgresql_backend. Mon nouveau patch fait comme dans passerelle vu que j'arrive après la bataille mais je continue de préférer l'utilisation du vrai backend dans les settings et non un truc magique qui remplace le backend postgresql_psycopg2 par tenant_schemas.postgresql_backend.

  • dans le manage il faut faire un if config_file: pour ne pas mettre de variable d'environnement inutile si y'a pas de config_file

Bien vu (c'est corrigé dans le nouveau patch).

  • je vois aussi un os.environ.get('MULTITENANT_TEMPLATE_DIRS', '.'), certainement à flinguer ?

Effectivement c'est flingué.

#11

Mis à jour par Thomas Noël il y a plus de 9 ans

Ok pour moi.

#12

Mis à jour par Jérôme Schneider il y a plus de 9 ans

  • Statut changé de En cours à Résolu (à déployer)
  • % réalisé changé de 0 à 100
#13

Mis à jour par Jérôme Schneider il y a plus de 9 ans

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF