Plugin pour gérer les correspondances projets et utilisateurs entre la console CPN et OpenProject.
Ce plugin est connecté aux hooks suivants:
- upsertProject
- deleteProject
Pour toute modification de projet, le plugin va faire les actions suivantes:
- Créer le projet côté OpenProject si inexistant depuis un template en tant que sous-projet d'un projet racine (voir variables d'environnement)
- Détecter les utilisateurs déjà présents et les comparer avec la liste des utilisateurs reliés au projet sur la console CPN
- Ajouter / Supprimer les utilisateurs en fonction de la comparaison précédente
Note: si l'utilisateur n'existe pas sur OpenProject, il est créé à la volée avec un mot de passe aléatoire
Quand un projet est archivé dans la console, cela supprime purement et simplement le projet d'OpenProject
Le plugin attend certaines variables d'environnement pour fonctionner:
OPENPROJECT_BASE_URL
: URL vers l'API d'OpenProject (https://<openproject_url>/api/v3/)OPENPROJECT_USERNAME
: login du compte robotOPENPROJECT_PASSWORD
: mot de passe du compte robotOPENPROJECT_TEMPLATE_PROJECT_ID
: Template du projet (son ID) à copier (voir documentation)OPENPROJECT_ANCESTOR_PROJECT_ID
: ID du projet racineOPENPROJECT_MEMBERSHIP_ROLE_ID
: ID du rôle que les utilisateurs auront