Projet

Général

Profil

Development #41284

Ne pas ré-initialiser last_account_deletion_alert s'il est déjà à None

Ajouté par Benjamin Dauvergne il y a environ 4 ans. Mis à jour il y a environ 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
02 avril 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

En dehors du fait que ça casse des tests dans hobo, c'est inutile.


Fichiers


Demandes liées

Lié à Authentic 2 - Development #26909: clean-unused-account doit dépendre d'une configuration lié à l'OUFermé02 octobre 2018

Actions

Révisions associées

Révision f2f80d5f (diff)
Ajouté par Benjamin Dauvergne il y a environ 4 ans

misc: style, PEP8 (#41284)

Révision 426891a7 (diff)
Ajouté par Benjamin Dauvergne il y a environ 4 ans

misc: simplify logging in clean-unused-accounts (#41284)

Révision 7ab92c57 (diff)
Ajouté par Benjamin Dauvergne il y a environ 4 ans

misc: do no clear last_account_deletion_start on login (#41284)

Historique

#1

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

  • Lié à Development #26909: clean-unused-account doit dépendre d'une configuration lié à l'OU ajouté
#2

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

  • Assigné à mis à Benjamin Dauvergne
#3

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

J'aurai préféré virer complètement ça et le gérer au niveau du cron d'envoi des mails mais ce sera pour une autre fois.

#4

Mis à jour par Nicolas Roche il y a environ 4 ans

  • Statut changé de Solution proposée à Solution validée

Dans authentic2/management/commands/clean-unused-accounts.py,
la fonction clean_unused_accounts() filtre les utilisateurs à supprimer/notifier
sur l'attribut last_login.

Donc pas besoin de remettre à None l'attribut last_account_deletion_alert à
chaque connexion pour ne pas supprimer l'utilisateur.

Pour moi, le test sur cet attribut pour envoyer une alerte uniquement aux utilisateurs
connectés depuis fait qu'à mon avis ce code n'est jamais exécuté.

users = User.objects.filter(ou=ou, last_login__lte=now-alert_delay)
for user in users.filter(last_account_deletion_alert__isnull=True):
   self.send_alert(user)

(mais dans les faits il est couvert par les tests)

#5

Mis à jour par Paul Marillonnet il y a environ 4 ans

Nicolas Roche a écrit :

Dans authentic2/management/commands/clean-unused-accounts.py,
la fonction clean_unused_accounts() filtre les utilisateurs à supprimer/notifier
sur l'attribut last_login.
Donc pas besoin de remettre à None l'attribut last_account_deletion_alert à
chaque connexion pour ne pas supprimer l'utilisateur.

Ce n'est à mon avis pas suffisant. Je pense que tu as en tête une autre version des conditions de filtrage qui seraient :

for user in users.filter(last_account_deletion_alert__lte=F('last_login')):
    self.send_alert(user)

auquel cas oui pas besoin de remettre à null ce champ last_account_deletion_alert, mais ce n'est pas la direction empruntée par Valentin dans #26909, laquelle est à mon avis tout aussi viable. Je plussoie pour le ack, pousse ça Benj.

#6

Mis à jour par Valentin Deniaud il y a environ 4 ans

Paul Marillonnet a écrit :

Ce n'est à mon avis pas suffisant. Je pense que tu as en tête une autre version des conditions de filtrage qui seraient :
[...]

C'est vachement mieux comme patch, pousse ça sur une autre branche être sûr que ça build et Benj choisit celui qu'il pousse ?

#8

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

J'ai passé les erreurs de mail en warning mais je peux revenir là dessus, c'est juste que ça fait des tonnes de mails d'erreur si y un souci avec le serveur de mail.

#9

Mis à jour par Valentin Deniaud il y a environ 4 ans

Je préférerais nettement voir les fix sur le logging et même le nouveau self.now dans le premier patch, qu'il n'y ait dans le second que le correctif.

#10

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

Voilà, j'ai encore simplifié les logs, on s'arrête à la première exception, si le SMTP ou autre chose ne marche pas on le saura tout de suite et on ne recevra pas 100 mails différents pour nous le dire, sur les échecs critiques comme cela je pense qu'il faut éviter de vouloir être trop malin.

#11

Mis à jour par Valentin Deniaud il y a environ 4 ans

  • Statut changé de Solution proposée à Solution validée

Ça roule.

#12

Mis à jour par Benjamin Dauvergne il y a environ 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 7ab92c578f9b0bee5ae2208c34e87812863c9a91
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Fri Apr 3 12:20:07 2020 +0200

    misc: do no clear last_account_deletion_start on login (#41284)

commit 426891a7a024452076fbd612700f5877048e8ef3
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Fri Apr 3 12:16:35 2020 +0200

    misc: simplify logging in clean-unused-accounts (#41284)

commit f2f80d5f30727edaaae5acbc56ad43f062d6258d
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Thu Apr 2 22:03:17 2020 +0200

    misc: style, PEP8 (#41284)
#13

Mis à jour par Paul Marillonnet il y a environ 4 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF