Flux de travail avancé
Description
Plugin pour la configuration flexible et l'automatisation des processus métier. Permet de configurer et d'exécuter automatiquement des scénarios complexes qui vont au-delà des flux de travail standard de Redmine. Le système flexible de "Règles Personnalisées" vous permet de définir des restrictions spécifiques.
Fonctionnalités principales
- Nouveau format de champ personnalisé : "Date et heure"
- Règles Personnalisées
- Actions Automatiques
Compatibilité
Redmine : 5.0 - 6.1
Navigateurs Web : Chrome, Firefox, Safari, Edge
Bases de données : MySQL 5.7, MySQL 8.0, PostgreSQL 14-16, SQLite
Plugins : redmine_kanban, redmine_advanced_checklists, advanced_charts, appearance_custom, module_manager, periodic_reminder, user_group_editor, queries_perfect, selectbox_autocompiler, cost_calculator.
Installation et Mise à jour
- Supprimez la version précédente du plugin Redmine, si elle existe.
cd redmine/plugins rm -r advanced_workflow - Copiez le nouveau dossier du plugin
advanced_workflowdansredmine/plugins/ - Exécutez les migrations dans le répertoire racine de Redmine
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflow - Arrêtez et redémarrez Redmine. (Sur certaines installations de Redmine (par exemple, dans Docker), il est important d'arrêter et de démarrer le serveur, pas seulement de le redémarrer).
Suppression
- Exécutez la commande de suppression dans le répertoire racine de Redmine
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflow VERSION=0
- Supprimez le dossier du plugin
advanced_workflowderedmine/plugins/
rm -r advanced_workflow
- Arrêtez et redémarrez Redmine.
Configuration
- Configurez les rôles d'utilisateur dans Administration -> Rôles et Permissions.
- Activez le module "Flujos de Trabajo Avanzados" pour les projets dans la configuration de chaque projet.
- Vérifiez et modifiez d'autres configurations du plugin dans Administration -> Modules -> Flujos de Trabajo Avanzados.
Administration
Section "Rôles et Permissions"
- Administrer les règles au niveau du projet - Accès pour modifier les règles et les actions au sein du projet.
Section "Champs personnalisés"
Le plugin Advanced Workflows ajoute un nouveau format de champ personnalisé "Date and Time"


"Date and Time" peut être utilisé comme filtre (condition)

Options disponibles :
- Heure Précédente - Le filtre inclut les issues où la valeur du champ "Date and Time" se situe dans l'heure précédent l'heure UTC actuelle.

Section "Modules"
Dans Administration -> Modules -> Flujos de Trabajo Avanzados vous pouvez configurer :
-
Exécuter comme utilisateur - Possibilité de sélectionner l'administrateur au nom duquel les actions seront réalisées selon l'horaire.
-
Nombre maximum d'issues lors de la réalisation d'actions programmées

Section "Règles Personnalisées"
Les règles personnalisées vous permettent de définir des restrictions sur l'attribution des issues aux utilisateurs sous des conditions spécifiques.
Dans Administration -> Règles Personnalisées, vous pouvez créer et configurer des règles :

Création d'une règle
Lors de la création, spécifiez le nom et l'activité :

Modification des règles
Après avoir créé une règle, la possibilité d'éditer les conditions et les restrictions apparaît.

Conditions possibles :
- Projet
- Tracker
- Version
- Auteur
- Utilisateur actuel
- Assigné au groupe
- Groupe d'auteurs
- Assigné au rôle
- Rôle de l'utilisateur actuel
- Statut de l'issue
- Tracker de l'issue parent
- Version de l'issue parent
- Champs personnalisés "Issues" avec les types "List", "Text", "Float", "Integer", "Date", "Date and Time".
- Champs personnalisés "Projets" avec les types "List", "Text", "Float", "Integer", "Date".


Restrictions possibles:
- Assigné
- Assigné au groupe
- Rôle de l'assigné
- Date d'échéance
- Tracker
- Version

Section "Actions Automatiques"
Les actions automatiques vous permettent d'exécuter des actions sélectionnées lors de la sauvegarde d'un issue ou selon un horaire, dans les conditions spécifiées.
Dans Administration -> Actions Automatiques, vous pouvez créer et configurer des Actions :

Création d'actions
Lors de la création, spécifiez le nom, la méthode d'exécution et l'activité.
Les actions peuvent être réalisées de deux manières différentes :
-
Lors de la sauvegarde - les actions seront réalisées instantanément lors de la création/modification de l'issue.
-
Cron job - les règles seront exécutées périodiquement selon l'horaire cron.

Modification des actions
Après avoir créé une action, la possibilité de modifier les conditions et les actions apparaît.

Conditions possibles :
- Filtres d'issue standard
- Filtres d'issue personnalisés
Actions possibles:
- Assigné
- Désactiver la sauvegarde
- Envoyer un e-mail
- Statut
- Tracker
- Version
- Version des sous-tâches ouvertes
- Observateurs
- Webhook (GET)
- Webhook Mattermost
- Webhook Telegram
- Checklist (si le plugin :redmine_advanced_checklists est installé)


Pour les actions "Envoyer un e-mail", "Webhook (GET)", "Webhook Mattermost" et "Webhook Telegram", les variables d'action sont disponibles.

Utilisation
Activation des règles et des actions
Après avoir créé des règles et des actions, vous devez les activer séparément dans la configuration du projet.
Pour ce faire, allez dans :
Projet -> Configuration -> Règles Personnalisées, activez les règles qui sont nécessaires dans ce projet.

Projet -> Configuration -> Actions Automatiques, activez les actions qui sont nécessaires dans ce projet.

Règles Personnalisées
Restrictions disponibles qui seront appliquées lorsque les conditions sont remplies :
Assigné :
L'issue ne peut être assignée qu'aux utilisateurs sélectionnés.

Groupe de l'assigné :
L'issue ne peut être assignée qu'aux utilisateurs membres des groupes sélectionnés.

Rôle de l'assigné :
L'issue ne peut être assignée qu'aux utilisateurs ayant le rôle sélectionné pour le projet.

Date d'échéance :
La date d'échéance de l'issue ne peut être spécifiée que dans une plage de dates déterminée.

Tracker :
Les issues ne peuvent avoir que les trackers sélectionnés.

Version :
Les issues ne peuvent avoir que les versions sélectionnées.

Actions Automatiques
Méthode d'exécution "Cron job"
Les actions seront exécutées périodiquement selon l'horaire cron.
Pour que l'action automatique fonctionne correctement, vous devez ajouter une nouvelle commande au crontab du serveur, qui exécute la commande bundle exec rake advanced_workflows:run_actions
Exemple de commande :
*/5 * * * * cd /absolute/path/to/redmine && redmine bundle exec rake advanced_workflows:run_actions >> /absolute/path/to/redmine/logs/cron_advanced_workflows.log
Ajoutez cette commande à cron au nom de l'utilisateur sous lequel Redmine est exécuté, en remplaçant /absolute/path/to/redmine par le chemin absolu de votre dossier d'installation de Redmine.
La commande cron sera exécutée toutes les 5 minutes */5 * * * *
Tous les messages standard seront joints au fichier .../logs/cron_advanced_workflows.log
Actions disponibles qui seront réalisées lorsque les conditions sont remplies :
Webhook (GET) :
Envoie une requête GET à l'URL spécifiée. S'utilise pour l'intégration avec des systèmes externes, par exemple, pour la synchronisation avec Jira.
Prend en charge toutes les variables de champ d'issue.

Webhook Mattermost :
Envoie un message à l'URL spécifiée au format Mattermost. Pour l'intégration avec Mattermost.
Prend en charge toutes les variables de champ d'issue. 
Webhook Telegram
Envoie un message à l'URL spécifiée au format Telegram. Pour l'intégration avec Telegram
Prend en charge toutes les variables de champ d'issue.
Envoyer un e-mail:
Envoie un e-mail aux utilisateurs spécifiés ou aux utilisateurs dans des groupes.
Prend en charge toutes les variables de champ d'issue.

Version :
Change automatiquement la version de l'issue.
- Remplacer par la version de l'issue actuelle - Remplace la version de l'issue par la version actuelle (réelle) du projet.

Version des sous-tâches ouvertes :
-
Changer en - Change la version de toutes les sous-tâches ouvertes à la version spécifiée.
-
Définir comme la version de l'issue - Change la version de toutes les sous-tâches ouvertes à la version de l'issue.

Désactiver la sauvegarde :
Désactive la création/modification de l'issue. 
Observateurs :
Ajoute les observateurs spécifiés à l'issue. 
Statut :
Change le statut de l'issue à celui spécifié. 
Tracker :
Change le tracker de l'issue à celui spécifié. 
Checklist :
Disponible si le plugin :redmine_advanced_checklists est installé.
Crée automatiquement une checklist à partir de modèles lorsque les conditions sont remplies.
Utilise des modèles préparés. 
En cas de problème ou de question, envoyez-nous un e-mail [email protected]