Comment diffuser des règles des dictionnaires ?

Cas d'utilisation

- Possibilité de prérequis : 
- Cas 1 : utilisateur gestionnaire complet de ces règles :
- On gère les ajouts en fin de liste de règle.
- pas de gestion de mise à jour (à l'utilisateur de faire delete / insert)
- Cas 2 : utilisateur semi assisté
- gestion des mises à jour des règles
- on force alors la non modification des règles importées ?
- que se passe t'il pour la gestion de l'ordre des règles ?
- Cas 3 : utilisateur assisté complètement
- pack de règle GLPI non modifiable juste activable / desactivable
- moyo : je pense que seuls le 1er et le 3eme cas de figure sont réalistes
- Walid : il y a aussi (mais c'est plus compliqué) l'idée d'avoir 2 listes séparées. Une liste de de règle imposée (pack) passée en premier, puis les règles de l'utilisateur. Cela implique 2 tables ou une différenciation claire (avec un système d'ordre propre)...

Import / Mise à jour du pack de règles

- Import unitaire de règle et / ou Import par pack ?
- moyo : les 2 mon général
- Walid : pareil, on doit pouvoir injecter une règle ou un pack de règle complet
- Si règle existe déjà ? (comparaison par UID ou autre) que fait t'on ?
- moyo : le problème est de savoir si l'utilisateuitr a modifié la règle. Dans le cas on ajoute une nouvelle règle en modifiant le nom / dans le cas 3 on n'a pas de problème
- Walid : pour moi un utilisateur ne doit pas modifier une règle importée
- moyo : dans le cas 1 il doit pouvoir modifier les règles.
- Si dépendance entre règles (du genre celle ci après celle là) comment faire ? Problématique d'ordre des règles.
- moyo : problème dans tous les cas sauf le 3 ou on gère tout de A à Z
- Walid : le plus simple c'est les règles importées c'est de mettre à la fin, l'utilisateur a la responsabilité de modifier ou non l'ordre des règles...
- Si pack comment gérer l'ordre qui a pu changer / être modifier ?
- moyo : ingérable sauf dans le cas 3.
- Walid :pareil que [[MoYo]]
- Gestion de la suppression de règle ?
- moyo : on ne le gère pas dans le cas 1 et dans le cas 3 c'est gérable
- Walid : on ne supprime pas des règles du pack, on peut juste les désactiver

Gestion des règles au quotidien

- Modification possible des règles importées ?
- moyo : cas 1 / 2 possible dans le cas 3 impossible
- Si mise à jour d'un règle modifiée que faire ?
- moyo : dans cas 1 pas de soucis c'est de la reponsabilité de l'utilisateur / cas 2 gros soucis / cas 3 impossible

Génération du pack de règles / Soumission / Récupération

- Génération personnalisé et / ou Création de pack complet et / ou Gestion  unitaire des règles ?
- Outils de gestion nécessaire
- qui a accès ?
- Walid : quelques admins qui peuvent tester les règles et qui connaissent le fonctionnement du moteur
- soumission de règles par les utilisateurs ?
- Walid : dans l'idée il faudrait. Dans la pratique ça pose le pb d'un utilisateur qui soumet une règle, qui fonctionne sur sa base. Hors sa règle n'est pas assez générique et on s'en aperçoit plus tard... Si soumission de règles, il faut un système pour exporter une règle depuis GLPI, et pouvoir l'envoyer sur une page du projet pour validation

Walid : De manière plus générale, je me pose la question sur la pertinence d'avoir un pack de règle très complet car avoir une règle pour IBM c'est important, mais pour le fournisseur XXX qui est utilisé que par 1% des utilisateurs de GLPI ça l'est moins...
Si c'est un groupe d'admin qui valide les règles, alors il faut déterminer quels sont les critères d'acceptation de celles soumises.


Avis

- moyo : je serais plutôt partisan du cas 1 qui permet en plus d'avoir une gestion complètement communautaire des règles. Il ne demanderait quasiment qu'à avoir un système d'export / import de règles. En terme de souplesse pour les utilisateurs je pense que c'est le mieux.

Import / Export

Disposer d'un moyen d'importer et d'exporter des règles dans GLPI.
  • le format XML semble le plus aproprié
  • nécessité d'un UID de règle unique pour éviter les doublons et faciliter les mises à jour (moyo : type + nom de règle ne suffit pas ?) <- (JMD dans ce cas il faudrait interdire le chgt de nom par le user..., l'uid me semble plus clean) <- c'est surement plus clean mais est-ce que c'est nécessaire ? si on propose des règles aux utilisateurs leur gestion est de leur responsabilité. Que se passe t'il si un utilisateur modifie une règle importée ? Dans tous les cas on a un problème.

Import

  • pouvoir importer un fichier XML en vérifiant les champs nécessaires (nom/critère/action)
  • ajouter un message indiquant de faire une sauvegarde de la base GLPI avant de rejouer les dictionnaires + disclamer sur le wiki (moyo : c'est indépendant de l'import /E xport)
  • règle injectée inactive par défaut

Export

  • Exporter une règle depuis un bouton dans l'interface de GLPI
  • Exporter la règle seule ? (moyo : idée : pack de règles par type pour faciliter l'import massif) (jmd : je rejoins moyo)
    • export possible seulement après que la règle soit jouée et qu'au moins une entrée du cache existe ? (moyo : je vois pas l'intérêt. Ca va surtout amener de la lourdeur)
    • exporter la règle seule ou règle + entrées du cache ? (moyo : le cache n'a pas a être exporté)

UUID

  • Ajouter un champ UUID, généré lors de l'export et utilisé pour éviter de créer des doublons

Mise à disposition des règles

Où ?
  • actuellement dans le wiki http://glpi-project.org/wiki/doku.php?id=fr:manuel:dictionnaries_examples_fr
  • comment mettre à dispo les XML ?
  • est ce que la règle doit être validée par une personne avant d'être rendue publique ? (remi : au minimum modéré à postériori)
  • est ce qu'on met un champs pour indiquer que la règle a été validée par un de nous et fonctionne ? (moyo: commentaires ?)

jmd : Prendre la responsabilité de "garantir" les règles me semble difficilement tenable.
idée à chaud : Trouver un moyen pour gérer un dépot de règles simple que les users puissent alimenter et noter (par exemple : ok, ne fonctionne pas) avec pourquoi pas une interface permettant de sélectionner toutes les règles souhaitées pour générer un xml à la volée (remi : depuis la modif massive ? XML multi-règles)

remi : depuis le site de démo ??