petalslink / petals-cockpit-specs

Specifications for Petals Cockpit
https://petals.gitbook.io/petals-cockpit-specs
GNU General Public License v2.0
1 stars 1 forks source link

Contenu du fil d'Ariane #12

Open psouquet opened 5 years ago

psouquet commented 5 years ago

Il faut valider quel sera le contenu du fil d'Ariane selon les vues:

Vues

Doit on représenter la vue actuelle ? Cliquer sur la vue dans le fil d'Ariane reviendrait à cliquer sur l'icone de la vue correspondante.

Workspace Dev > Topologies > testbus-3 > container-sample-0 Workspace Dev > Services > {localtest}fire-all-employees-consume Workspace Dev > Services

ou non :

Workspace Dev > testbus-3 > container-sample-0 Workspace Dev > {localtest}fire-all-employees-consume Workspace Dev

Ou situer la SA ?

Dans l'arbre des topologies les SA et SL sont au niveau du conteneur, la SU est sous le composant.

Workspace Dev > testbus-3 > container-sample-0 > bc-soap > su-consume-fire-all Workspace Dev > testbus-3 > container-sample-0 > sa-fire-all Workspace Dev > testbus-3 > container-sample-0 > sl-saxone

Doit on situer les endpoints ?

On peut situer un endpoint sur un composant physique, les services et interface non.

Workspace Dev > testbus-3 > container-sample-0 > bc-soap > edp-654877-654-687-654 Workspace Dev > {localtest}fire-all-employees-consume Workspace Dev > {localtest}fire-all-employees-consume-interface

vincent-zurczak commented 5 years ago

C'est amusant, parce que c'est le genre de questions auxquelles répond un arbre des tâches. :speak_no_evil:

A graph attempt

digraph G {

    style=filled;
    color=lightgrey;
    node [style=filled,color=white];
    a0 [label="Accueil / Sélection des espaces de travail"]
    a1 [label="Espace de travail"]
    a2 [label="Topologies"]
    a3 [label="Conteneur"]
    a15 [label="Registre"]
    a4 [label="Services"]
    a0 -> a1;
    a1 -> a2;
    a2 -> a3;
    a2 -> a15;
    a2 -> a4;

    a5 [label="Composants"]
    a55 [label="<Composant> ?"]
    a6 [label="Service Units"]
    a66 [label="<su> ?"]
    a7 [label="Service Assemblies"]
    a77 [label="<sa> ?"]
    a8 [label="Shared Libraries"]
    a88 [label="<sl> ?"]
    a10 [label="admin"]
    a3 -> a10 [style=dashed];
    a3 -> a5; a5 -> a55 [style=dashed];
    a3 -> a6; a6 -> a66 [style=dashed];
    a3 -> a7; a7 -> a77 [style=dashed];
    a3 -> a8; a8 -> a88 [style=dashed];

    a9 [label="Services (vue transverse)"]
    a1 -> a9;
}

Pour info, j'ai utilisé cet éditeur pour créer le graphe, et ce site pour l'encoder dans l'URL. L'arbre est un peu fait à l'arrache, je n'ai pas tout précisé. Faîtes simple, considérez la SU comme une SA ou une SL. Tout est au niveau du conteneur. Inutile de rendre les choses plus compliquées pour l'utilisateur... :roll_eyes:

URL Fil d'Ariane Commentaire
/dev/t Dev > Topologies Liste de toutes les topologies dans l'espace dev.
/dev/t/ma%20topologie Dev > ma topologie Accès à une topologie.
/dev/t/ma%20topologie/c Dev > ma topologie > Containers La liste des conteneurs dans cette topologie.
/dev/t/ma%20topologie/c/bus-0 Dev > ma topologie > Bus-0 Les informations et l'administration de Bus-0.
/dev/t/ma%20topologie/r Dev > ma topologie > Containers La liste des registres dans cette topologie.
/dev/t/ma%20topologie/s Dev > ma topologie > Services La liste des services dans cette topologie.

Dans ce tableau, les listes ne sont pas accessibles directement dans le fil d'Ariane. Mais le but du fil est de savoir où on est, pas forcément d'avoir accès à tous les liens possibles.

En fait, les vraies questions qui se posent, c'est de savoir quels niveaux se déclinent en pages. Est-ce qu'on veut une page dédiée pour une service unit ? Est-ce que ça a un sens ? Ou bien est-ce qu'une liste avec une vue détaillée suffit ? De même, est-ce qu'on fait une page dédiée pour les actions d'administration sur un conteneur ? Ou bien est-ce que la page d'accueil du bus suffit ? Elle contiendrait alors les options d'administrations et des liens vers les différentes listes d'artefacts.

Autres questions posées par le tableau que je viens de créer : est-ce que le nom autorise les espaces ? Est-ce que les alias ou la casse sont acceptés ? Ma topologie est-elle équivalente à ma topologie et ma-topologie ? J'aurais tendance à dire oui, et que c'est une contrainte à poser. Et cela aura des répercussions dans Petals (parseur de topologie, server.properties, librairie de déploiement) et dans le back-end de Cockpit (base de données, vérifications).

bescudie commented 5 years ago

J'ai refait l'arbre des pages: image

Le fil d'ariane n'est présent que dans les pages Espaces de travail, car Admin PetalsCokpit et User sont des "Dialog" Pour le Fil d'Ariane cela donne:

URL Fil d'Ariane Commentaire
/W=idWksp Dev Page générale du workspace "Dev" id="idWksp", description...
/W=idWksp /T/B=idBus Dev>Topologie> nameBus Page du Bus id="idBus" et nom="nameBus" dans le wkspce "Dev"
/W=idWksp /T/B=idBus/C=idCont Dev>Topologie> nameBus>nameCont Page Container id="idCont" et nom="nameCont" du bus idBus dans le wkspce "Dev"
/W=idWksp /T/B=idBus/C=idCont/cp=idComp Dev>Topologie> nameBus>nameCont>nameComp Page Composant id="idComp" et nom="nameComp" du container idCont du bus idBus dans le wkspce "Dev"
/W=idWksp /T/B=idBus/C=idCont/sa=idSA Dev>Topologie> nameBus>nameCont> nameSA Page de la SA id="idSA" et nom="nameSA" du container idCont du bus idBus dans le wkspce "Dev"
/W=idWksp /T/B=idBus/C=idCont/cp=idComp/su=idSU Dev>Topologie> nameBus>nameCont> nameComp>nameSU Page de la SU id="idSU" et nom="nameSU" sur le composant idComp du container idCont du bus idBus dans le wkspce "Dev"
... ... ...
/W=idWksp /S/I=idInterface Dev>Service> nameInterface Page de l'Interface de Service id="idInterface" et nom="nameInterface" dans le wkspce "Dev"
... ... ...
vincent-zurczak commented 5 years ago

Dans la vue qui affiche tout (disons l'explorateur), il est intéressant que les SU apparaissent sous les composants (c'est une vue logique). Mais dans le cadre de la gestion des artefacts, ça oblige à connaître le composant avant d'accéder à une SU. Et si l'utilisateur ne sait pas à quel composant elle est rattachée ? Ou s'il veut une vue globale de toutes les SU (rien que les SU) ?

Plus globalement, la SU associée au composant, c'est comme ça que c'est fait dans Petals, parce que ça vient de JBI. Mais chez les ESB concurrents, tout est au même niveau. Et tous ont un équivalent des SU et des SA. Avoir les deux accès (par le composant ou depuis le conteneur) serait donc préférable. En gros, SU et Composants seraient côte-à-côte, et il y aurait une flèche qui va de Composants vers SU.

Pour le fil d'Ariane.... nameCont> nameComp>nameSU laisse penser que l'ID de la SU est propre au composant, alors que dans Petals, cet ID est unique sur le conteneur (le composant ne vérifie rien de mémoire). Dans les faits, nameCont> nameSU serait plus simple.

psouquet commented 5 years ago

C'est amusant, parce que c'est le genre de questions auxquelles répond un arbre des tâches.

On ne tire pas sur les ambulances! :stuck_out_tongue:

Votre discussion n'est pas le sujet. Cette issue s'attaque à la manière dont le contenu du fil d'Ariane représente les pages, non les pages elles mêmes. Je vais créer une nouvelle issue pour pouvoir discuter de la hiérachie des pages en reprenant vos commentaires. (et masquer vos réponses ici)

Pour recentrer sur le fil d'Ariane, les questions sur les vues dans le fil et la localisation des endpoints dans le fil restent valables. La localisation des SU devra attendre que la discussion sur la hiérarchie des pages avance je suppose. J'ajoute aussi un point :

Relation 1:1 entre URL et fil d'Ariane

Bertrand veut que l'URL actuelle soit modifiée pour refléter exactement le fil d'Ariane pour les topologies, de telle sorte que l'URL puisse être modifiée par l'utilisateur afin d'accéder à un des parent (de manière redondante avec le fil d'Ariane).

Ariane: Workspace Dev > testbus-3 > container-sample-0 > bc-soap > su-consume-fire-all URL https://linagora.gitlab.io/petals-cockpit/#/workspaces/3/petals/buses/12/containers/144/components/52/service-units/108

psouquet commented 5 years ago

Après quelques discussions avec Bertrand et pour faire avancer : Il faut valider quel sera le contenu du fil d'Ariane selon les vues:

Vues

On représente la vue dans le fil d'Ariane, reste à décider de ce que l'on fait quand on clique dessus (si le bouton est cliquable). :

  1. Il n'est pas cliquable
  2. Accès à un des bus de la topologie (bus overview)
  3. Accès à une page topologie (n'existe pas à l'heure actuelle, rien à mettre dedans de plus que l'arbre?)

Ou situer la SA ?

Discussion sur la hiérarchie des pages: #13

Doit on situer les endpoints ?

On ne situe pas les endpoints.

Workspace Dev > Services > edp-654877-654-687-654 Workspace Dev > Services > {localtest}fire-all-employees-consume

Relation 1:1 entre URL et fil d'Ariane

Pas de relation 1:1 entre url et fil d'Ariane. L'url reste comme elle est pour le moment (pas besoin de la changer vu que le fil d'Ariane permet de remonter l'arbre).