Flujo de trabajo avanzado
Descripción
Plugin para la configuración flexible y la automatización de procesos de negocio. Permite configurar y ejecutar automáticamente escenarios complejos que van más allá de los flujos de trabajo estándar de Redmine. Y el sistema flexible de "Reglas Personalizadas" le permite establecer restricciones específicas.
Características Principales
- Nuevo formato de campo personalizado: "Fecha y Hora"
- Reglas Personalizadas
- Acciones Automáticas
Compatibilidad
Redmine: 5.0 - 6.1
Navegadores Web: Chrome, Firefox, Safari, Edge
Bases de Datos: 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.
Instalación y Actualización
- Elimine la versión anterior del plugin de Redmine, si existe.
cd redmine/plugins rm -r advanced_workflow - Copie la nueva carpeta del plugin
advanced_workflowaredmine/plugins/ - Ejecute las migraciones en el directorio raíz de Redmine
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflow - Detenga e inicie Redmine. (En algunas instalaciones de Redmine (por ejemplo, en Docker), es importante detener e iniciar el servidor, no solo reiniciarlo).
Eliminación
- Ejecute el comando de eliminación en el directorio raíz de Redmine
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflow VERSION=0
- Elimine la carpeta del plugin
advanced_workflowderedmine/plugins/
rm -r advanced_workflow
- Detenga e inicie Redmine.
Configuración
- Configure los roles de usuario en Administración -> Roles y Permisos.
- Habilite el módulo "Flujos de Trabajo Avanzados" para los proyectos en la configuración de cada proyecto.
- Verifique y modifique otras configuraciones del plugin en Administración -> Módulos -> Flujos de Trabajo Avanzados.
Administración
Sección "Roles y Permisos"
- Administrar reglas a nivel de proyecto - Acceso para editar reglas y acciones dentro del proyecto.
Sección "Campos personalizados"
El plugin Advanced Workflows añade un nuevo formato de campo personalizado "Date and Time"


"Date and Time" puede ser usado como filtro (condición)

Opciones disponibles:
- Próxima hora - El filtro incluye aquellos issues donde el valor del campo "Date and Time" cae dentro de la próxima hora desde la hora UTC actual.

Sección "Módulos"
En Administración -> Módulos -> Flujos de Trabajo Avanzados puede configurar:
-
Ejecutar como usuario - Habilidad para seleccionar el administrador en nombre de quien las acciones serán realizadas de acuerdo al horario
-
Número máximo de issues al realizar acciones programadas

Sección "Reglas Personalizadas"
Las reglas personalizadas le permiten establecer restricciones en la asignación de issues para usuarios bajo condiciones específicas.
En Administración -> Reglas Personalizadas puede crear y configurar reglas:

Creando una regla
Al crear una, especifique el nombre y la actividad:

Editando reglas
Después de crear una regla, aparece la capacidad de editar condiciones y restricciones.

Posibles Condiciones:
- Proyecto
- Tracker
- Versión
- Autor
- Usuario actual
- Asignado al grupo
- Grupo de autores
- Asignado al rol
- Rol del usuario actual
- Estado del issue
- Tracker del issue padre
- Versión del issue padre
- Campos personalizados "Issues" con tipos "List", "Text", "Float", "Integer", "Date", "Date and Time".
- Campos personalizados "Proyectos" con tipos "List", "Text", "Float", "Integer", "Date".


Posibles Restricciones:
- Asignado
- Asignado al grupo
- Rol del asignado
- Fecha de vencimiento
- Tracker
- Versión

Sección "Acciones Automáticas"
Las acciones automáticas le permiten ejecutar acciones seleccionadas al guardar un issue o en un horario, dentro de las condiciones especificadas.
En Administración -> Acciones Automáticas puede crear y configurar Acciones:

Creando acciones
Al crear una, especifique el nombre, el método de ejecución y la actividad.
Las acciones se pueden realizar de dos maneras diferentes:
- Al guardar - las acciones se realizarán instantáneamente al crear/editar el issue.
- Cron job - las reglas se ejecutarán periódicamente de acuerdo con el horario cron.

Editando acciones
Después de crear una acción, aparece la capacidad de editar condiciones y acciones.

Posibles condiciones:
- Filtros de issue estándar
- Filtros de issue personalizados
Posibles acciones:
- Asignado
- Deshabilitar guardado
- Enviar correo
- Estado
- Tracker
- Versión
- Versión de subtareas abiertas
- Observadores
- Webhook (GET)
- Webhook Mattermost
- Webhook Telegram
- Checklist (si el plugin :redmine_advanced_checklists está instalado)


Para las acciones "Enviar correo", "Webhook (GET)", "Webhook Mattermost" y "Webhook Telegram" las variables de acción están disponibles.

Uso
Habilitando reglas y acciones
Después de crear reglas y acciones, necesita habilitarlas por separado en la configuración del proyecto.
Para hacer esto, vaya a:
Proyecto -> Configuración -> Reglas Personalizadas, habilite aquellas reglas que se necesiten en este proyecto.

Proyecto -> Configuración -> Acciones Automáticas, habilite aquellas acciones que se necesiten en este proyecto.

Reglas Personalizadas
Restricciones disponibles que se aplicarán cuando se cumplan las condiciones:
Asignado:
El issue solo se puede asignar a los usuarios seleccionados.

Grupo del asignado:
El issue solo se puede asignar a aquellos usuarios que sean miembros de los grupos seleccionados.

Rol del asignado:
El issue solo se puede asignar a usuarios con el rol seleccionado para el proyecto.

Fecha de vencimiento:
La fecha de vencimiento del issue solo se puede especificar dentro de un rango de fechas determinado.

Tracker:
Los issues solo pueden tener los trackers seleccionados.

Versión:
Los issues solo pueden tener las versiones seleccionadas.

Acciones Automáticas
Método de ejecución "Cron job"
Las acciones se ejecutarán periódicamente de acuerdo con el horario cron.
Para que la acción automática funcione correctamente, debe agregar un nuevo comando al crontab del servidor, que ejecuta el comando bundle exec rake advanced_workflows:run_actions
Ejemplo de comando:
*/5 * * * * cd /absolute/path/to/redmine && redmine bundle exec rake advanced_workflows:run_actions >> /absolute/path/to/redmine/logs/cron_advanced_workflows.log
Agregue este comando a cron en nombre del usuario bajo el cual se está ejecutando Redmine, reemplazando /absolute/path/to/redmine con la ruta absoluta a su carpeta de instalación de Redmine.
El comando cron se ejecutará cada 5 minutos */5 * * * *
Todos los mensajes estándar se adjuntarán al archivo .../logs/cron_advanced_workflows.log
Acciones disponibles que se realizarán cuando se cumplan las condiciones:
Webhook (GET):
Envía una solicitud GET a la URL especificada. Se utiliza para la integración con sistemas externos, por ejemplo, para la sincronización con Jira.
Admite todas las variables de campo de issue.

Webhook Mattermost:
Envía un mensaje a la URL especificada en formato Mattermost. Para la integración con Mattermost.
Admite todas las variables de campo de issue. 
Webhook Telegram
Envía un mensaje a la URL especificada en formato Telegram. Para la integración con Telegram
Admite todas las variables de campo de issue.
Enviar correo:
Envía un correo electrónico a los usuarios especificados o a los usuarios en grupos.
Admite todas las variables de campo de issue.

Versión:
Cambia automáticamente la versión del issue.
- Reemplazar con la versión del issue actual - Reemplaza la versión del issue con la versión actual (real) del proyecto.

Versión de subtareas abiertas:
-
Cambiar a - Cambia la versión de todas las subtareas abiertas a la especificada.
-
Establecer igual a la versión del issue - Cambia la versión de todas las subtareas abiertas a la versión del issue.

Deshabilitar guardado:
Deshabilita la creación/edición del issue. 
Observadores:
Agrega los observadores especificados al issue. 
Estado:
Cambia el estado del issue al especificado. 
Tracker:
Cambia el tracker del issue al especificado. 
Checklist:
Disponible si el plugin :redmine_advanced_checklists está instalado.
Crea automáticamente una checklist a partir de plantillas cuando se cumplen las condiciones.
Usa plantillas preparadas. 
Si tiene algún problema o pregunta, escríbanos un correo electrónico [email protected]