Projet

Général

Profil

Development #8217

Ajouter une tâche hobo pour notifier les agents des nouveaux rôles, connecter cette tâche aux signaux post_save, post_delete sur les rôles

Ajouté par Benjamin Dauvergne il y a plus de 8 ans. Mis à jour il y a plus de 8 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
09 septembre 2015
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Pour permettre aux agents de savoir pour quel tenant sont destinés ces messages de provisionning un champ audience est ajouté, contenant la listes des entity_id SAML connus d'authentic.


Fichiers

0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (5,48 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 09 septembre 2015 09:29
0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (5,77 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 09 septembre 2015 14:52
0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (5,5 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 09 septembre 2015 15:36
0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (6,04 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 09 septembre 2015 17:42
0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (5,44 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 09 septembre 2015 17:43
0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch (5,42 ko) 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 10 septembre 2015 10:02
0001-import-wcs-roles-import-roles-.emails-and-.emails_to.patch (2,24 ko) 0001-import-wcs-roles-import-roles-.emails-and-.emails_to.patch Benjamin Dauvergne, 15 septembre 2015 09:53
0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch (14,7 ko) 0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 15 septembre 2015 09:54
0003-agent-authentic2-do-not-activate-new-and-old-role-im.patch (2,4 ko) 0003-agent-authentic2-do-not-activate-new-and-old-role-im.patch Benjamin Dauvergne, 15 septembre 2015 09:54
0001-import-wcs-roles-import-roles-.emails-and-.emails_to.patch (2,64 ko) 0001-import-wcs-roles-import-roles-.emails-and-.emails_to.patch Benjamin Dauvergne, 15 septembre 2015 10:43
0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch (15,3 ko) 0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 15 septembre 2015 10:43
0003-agent-authentic2-do-not-activate-new-and-old-role-im.patch (2,4 ko) 0003-agent-authentic2-do-not-activate-new-and-old-role-im.patch Benjamin Dauvergne, 15 septembre 2015 10:43
0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch (24,8 ko) 0002-add-new-agent-task-to-provision-objects-to-tenants-f.patch Benjamin Dauvergne, 15 septembre 2015 11:18

Demandes liées

Lié à Publik - Project management #8006: Supprimer la création de rôles dans w.c.s.Fermé03 août 201505 janvier 2016

Actions
Lié à w.c.s. - Development #8219: nouvelle command 'notify' pour traiter les notifications provisionnement/déprovisionnement des rôles en provenance d'authenticFermé09 septembre 2015

Actions
Bloqué par w.c.s. - Development #8254: dans /api/roles exporter aussi .emails et .emails_to_membersFermé12 septembre 2015

Actions

Révisions associées

Révision c9a5b662 (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

import-wcs-roles: import roles .emails and .emails_to_members fields (#8217)

As we are moving from and w.c.s. role master to an authentic as role
master, we must first import as much data from w.c.s. roles as possible
into authentic.

Révision 57b1bd5c (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

add new agent task to provision objects to tenants (fixes #8217)

First use is to connect it to post_save, post_delete signal on Role
model of authentic, to propagate roles to tenants.

Révision 9c13972b (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

update french translations (#8217)

Révision 372cbb09 (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

agent/authentic2: do not activate new and old role import at the same time (#8217)

Révision 22d28835 (diff)
Ajouté par Benjamin Dauvergne il y a plus de 8 ans

agent/authentic2: fix typos in import-wcs-roles (#8217)

Historique

#1

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

#2

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

  • Statut changé de Nouveau à En cours
#4

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

  • Lié à Development #8219: nouvelle command 'notify' pour traiter les notifications provisionnement/déprovisionnement des rôles en provenance d'authentic ajouté
#5

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

  • Fichier 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch ajouté

Nouvelle version où on envoie tous les rôles à chaque fois, ça mange pas de pain et ça simplifie la synchro.

#6

Mis à jour par Frédéric Péters il y a plus de 8 ans

Je préférerais une version qui utilise les classes en place dans services.py, un notify() qui soit à peu près

for klass in service_classes:
    klass.notify(data)
#7

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

  • Fichier 0001-add-new-agent-task-to-provision-objects-to-tenants-f.patch supprimé
#9

Mis à jour par Frédéric Péters il y a plus de 8 ans

Mmmm, j'imaginais le notify() dans la classe de base, utilisant self.service_manage_cmd.

        if not os.path.exists(settings.WCS_MANAGE_COMMAND):

Et je note un autre truc là-dessus maintenant, c'est que le WCS_MANAGE_COMMAND, ce n'est pas nécessairement un fichier (en local j'ai 'wcsctl.py -f fichier.cfg' pour wcs et '.../venv/python ..../manage.py' pour d'autres applications).

Je n'ai pas d'autre suggestion que de faire le subprocess.Popen dans toutes les situations et ignorer le OSError qu'il lèverait en cas de commande manquante.

#10

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

Je savais bien que je n'avais pas envie d'aller vers ça :)

#11

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

  • Fichier 0001-new-notify-command-to-handle-role-provisionning-depr.patch ajouté
#12

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

  • Fichier 0001-new-notify-command-to-handle-role-provisionning-depr.patch supprimé
#14

Mis à jour par Frédéric Péters il y a plus de 8 ans

Avec la suppression de la modif au settings.py, ça me semble bien pour être commité.

#15

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

Voilà sur le bon ticket (je me suis mis à parler de ce ticket sur l'autre aussi...).

#16

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

Voilà avec la suppression de la modifications à settings.py.

#17

Mis à jour par Frédéric Péters il y a plus de 8 ans

Après avoir dormi dessus, je préférerais qu'on appelle la commande hobo_notify.

À part ça, je me suis aussi dit que j'allais devoir réfléchir à comment faire fonctionner ça dans l'environnement imio où il n'y a pas pour le moment pas de hobo, mais c'est mon affaire.

#19

Mis à jour par Frédéric Péters il y a plus de 8 ans

Ça me va bien ainsi.

#20

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

Ack pour moi aussi

#21

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

Encore une petite couche:
  • modification à import-wcs-roles pour créer un existant au niveau des champs emails et emails_to_members
  • plein de fichiers manquants: la surcharge du formulaire authentic des rôles (pour la gestion des emails de rôle), mise à jour du fichier sudoers dans le paquet (pour pouvoir lancer les commands hobo_notify des différentes applications), une implémentation de hobo_notify commune (qui ne fait rien, qui pourra très vite propager les rôles à Combo)
  • un setting HOBO_ROLE_EXPORT pour contrôler qui de import-wcs-roles ou de hobo_notify importe les rôles, pour gérer la transition
  • le coup du OSError ne peut pas marcher parce qu'on utilise sudo (et sudo est toujours là contrairement à la commande hobo_notify), donc ça va systématiquement faire un returncode!=0 au lieur d'un OSError, que je log mais c'est pas bien, il faudrait trouver un moyen de détecter qu'un service est là ou pas.

Voilà tout ça est déployé sur montpellier.dev.eo (avec HOBO_ROLE_EXPORT=True) mes quelques tests indiquent que ça marche (création, suppression, modification des champs).

#22

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

  • Bloqué par Development #8254: dans /api/roles exporter aussi .emails et .emails_to_members ajouté
#24

Mis à jour par Frédéric Péters il y a plus de 8 ans

Pour les traductions, je préfère qu'on garde un unique .po, ça t'irait ?

#26

Mis à jour par Frédéric Péters il y a plus de 8 ans

Il n'y a plus besoin du recursive-include hobo/agent/authentic2/locale *.po *.mo dans le MANIFEST.in.

Tu pourrais ajouter les lignes de commentaire de la GPL en début des nouveaux fichiers .py ? (il y a l'exemple dans hobo/profile/*.py).

Je préfère la modification du .po dans un commit séparé, je trouve que ça facilite les manipulations de commits.

En prenant ça en compte, c'est bon pour moi sans relecture supplémentaire.

#27

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

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

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

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

Formats disponibles : Atom PDF