Project

General

Profile

Development #17577

exporter le graphe des rôles en format type "plantuml"

Added by Thomas Noël about 7 years ago. Updated about 1 year ago.

Status:
Rejeté
Priority:
Bas
Assignee:
-
Category:
-
Target version:
-
Start date:
12 July 2017
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

Pour débogue/expliquer, ça serait super d'avoir un export graphique du graphe des rôles :

En live, en SVG, via graphviz.

Et/ou une version à envoyer dans PlantUML, genre :

# liste des rôles

object "Agent" as Role1

Role1 : slug: ...
Role1 : id 42

object "Agent double" as Role2

Role2 : slug: ...
Role2 : id 43

object "Agent traitant" as Role3

Role3 : slug: ...
Role3 : id 42

# et le graphe

Role1 <|-- Role2
Role2 <|-- Role3
Role3 <|-- Role1

Related issues

Related to Publik - Development #19758: Représentation graphique de l'arborescence des rôlesRejeté29 October 201719 January 2018

Actions

History

#2

Updated by Thomas Noël about 7 years ago

Pour l'instant je m'amuse avec ce script qui me produit un fichier utilisable dans plantuml :

$ cat roles_plantuml.py 
from authentic2.models import Role

roles = []
deps = []

for role in Role.objects.filter(ou__isnull=False).exclude(slug__startswith='_'):
    roles.append(u'object "{role.name}" as Role{role.id}'.format(role=role))
    roles.append('')
    roles.append('Role{role.id} : {role.slug}'.format(role=role))
    roles.append('Role{role.id} : id {role.id}'.format(role=role))
    roles.append('')

    for child in role.children(include_self=False, annotate=True):
        if child.direct:
            deps.append('Role{role.id} <|-- Role{child.id}'.format(role=role, child=child))

print '@startuml'
print '\n'.join(roles).encode('utf-8')
print ''
print '\n'.join(deps).encode('utf-8')
print '@enduml'
#3

Updated by Benjamin Dauvergne almost 7 years ago

  • Priority changed from Normal to Bas
#4

Updated by Frédéric Péters almost 7 years ago

  • Related to Development #19758: Représentation graphique de l'arborescence des rôles added
#5

Updated by Thomas Noël about 1 year ago

  • Status changed from Nouveau to Rejeté
  • Planning set to No

Idée rejetée, ça ne donnera jamais quelque chose d'exploitable dans la réalité des configurations actuelles avec des dizaines de rôles.

Also available in: Atom PDF