Integración de la gestión de proyecto de Redmine en Eclipse con el soporte de Mylyn.

1
12446

Integración de la gestión de proyecto de Redmine en Eclipse con el soporte de Mylyn.

0. Índice de contenidos.


1. Introducción

Una vez hemos asumido el uso de una herramienta para llevar a cabo la gestión del proyecto, como puede ser
Redmine,
dentro de nuestro equipo de desarrollo, y vamos cumpliendo los objetivos de:

  • documentar todo lo relacionado con nuestras historias de usuario,
  • llevar a cabo la división de tareas en la propia herramienta, priorizarlas, estimarlas,…
  • registrar las incidencias para que formen parte de nuestra gestión del conocimiento,

el siguiente paso es mantener una trazabilidad entre las operaciones que realicemos contra el repositorio de código y
las tareas relacionadas en la herramienta de gestión de proyectos.

¿Cuantas veces habéis dejado el comentario de un commit vacío?
Todas
Alguna
Ninguna. En serio…, ¿no percibes la necesidad de añadir mesajes descriptivos en los commits?, echar mano del histórico y no saber
porque se modificó el código de una clase debería estar castigado con pena de lacelación en la yema del dedo meñique, sí el que usas para pulsar «INTRO», committer!.

Se puede configurar un repositorio de código para rechazar los commits sin mensaje, pero sin necesidad de llegar a ese
punto, en este tutorial vamos a ver cómo Mylyn puede ayudarnos a autocompletarlos.

Mylyn es un plugin para Eclipse que permite el acceso a un repositorio de tareas local o remoto y, en este tutorial, vamos a
ver cómo configurar Redmine como un repositorio de tareas para Mylyn de tal modo que nos permita llevar a cabo la gestión del proyecto
directamente desde el propio Eclipse:

  • dar de alta una tarea,
  • modificar su estado,
  • asignarnos una tarea como actividad actual, en la que estamos trabajando, y asignar su #id y descripción, por defecto, a los commits durante dicha asignación,
  • crear búsquedas personalizadas en base a una serie de criterios para marcar sobre qué proyectos y en que modo estamos trabajando con ellos,
  • habilitar una interfaz que limita la visibilidad de los fuentes a aquellas partes del código en la que estamos trabajando,

Repito, todo ello desde el propio Eclipse, sin necesidad de acceder a la interfaz web de Redmine.


2. Entorno.

El tutorial está escrito usando el siguiente entorno:

  • Hardware: Portátil MacBook Pro 15′ (2.4 GHz Intel Core i7, 8GB DDR3 SDRAM).
  • Sistema Operativo: Ubuntu Linux Server Edition 12.04 x86, sobre un Mac OS X Lion 10.7.5, para Redmine 2.3.0-0
  • Eclipse Juno SR2


3. Instalación.

Lo bueno es que Mylyn ya viene instalado con Eclipse, lo malo es que sólo viene configurado Bugzilla como repositorio
Mylyn y, si queremos configurar Mylyn para Redmine tenemos que instalar el plugin manualmente, porque no se encuentra
en el market.

De hecho, debemos llevar a cabo una doble instalación:

  • a nivel de Eclipse el soporte de repositorio de Redmine para Mylyn, y
  • a nivel de Redmine el plugin que permita a Mylyn consultar la información sobre los proyectos.


3.1 Instalación del repositorio de Redmine para Mylyn en Eclipse.

La instalación la debemos llevar a cabo manualmente siguiendo las instrucciones de la siguiente página

https://github.com/ljader/redmine-mylyn-plugin:

Una vez tenemos descargado el paquete en local, desde el menú de Eclipse Help > Install New Software añadimos una referencia al archivo:

Seleccionamos el paquete de Mylyn para Redmine

Y confirmamos la instalación

Nos pedirá reiniciar y tras el reinicio ya tendremos disponible el repositorio de Redmine para Mylyn.


3.2 Instalación del plugin de Mylyn en Redmine.

Lo primero que debemos hacer es detener el servicio de Redmine y luego descargarnos el paquete del
plugin ejecutando el siguiente comando de git:


ubuntu@ubuntu:/opt/redmine-2.3.0-0/apps/redmine/htdocs/plugins$ git clone git://github.com/danmunn/redmine_mylyn_connector.git

Y, una vez descargado, instalar el paquete con el soporte de ruby, bien ejecutando el siguiente comando

sudo ../../../../ruby/bin/bundle install --without development test

O desde el propio directorio instalando el paquete de ruby a través de apt-get.

sudo apt-get install rake
sudo apt-get update

Para comprobar la instalación podemos ejecutar el siguiente comando y comprobar el resultado de la salida por consola.


4. Configuración y uso.

Una vez instalados ambos plugins debemos habilitar, a nivel de Redmine, la autenticación vía api REST accediendo a la administración > configuración > Autenticación > «Acivar servicio Web REST», para que el plugin de Redmine para Mylyn pueda autenticarse.

Ahora desde la vista de tareas ya podemos añadir un nuevo repositorio remoto pulsando sobre el icono superior derecho,

y podemos seleccionar Redmine como repositorio remoto

debemos introducir una información similar a la siguiente de modo tal que cada usuario introduce sus credenciales,
que le darán visibilidad para los proyectos que tenga permisos:

pulsamos sobre «Validate Settings» y, si todo va bien, se mostrará una ventana similar a la siguiente que nos sugiere la creación de una «Query»,

una query es un filtro para mostrar por defecto tareas con ciertas condiciones; seleccionamos crear una nueva query

a continuación se muestran todos los filtros posibles

tras pulsar sobre finalizar, tendremos un listado con todas las tareas que cumplen con los criterios de búsqueda y se habilitarán las
notificaciones de Eclipse mostrando las novedades en relación con Redmine,

Lo primero que podemos hacer es seleccionar una tarea para activarla y marcar que estamos trabajando en la misma.

Si os fijáis sutilmente en el botón inferior que reza «I’m Feeling Lazy» su acción es precisamente asignarnos una tarea
de poca estimación o envergadura, porque nos encontramos algo perezosos, vamos, con pocas ganas…; se que a más de uno le va a encantar… 😉


4.1. Creación de una tarea, activación y commit al repositorio.

Para crear una tarea no tenemos más de pulsar sobre el icono correspondiente «New Task» y se mostrará un formulario como el siguiente:

desde el que podemos añadir la misma información que incluiríamos desde la interfaz web.

En el listado se puede seleccionar y marcar como activada, el icono cambiará como sigue:

Uno de los efectos de la activación de la tarea, esto es, la asignación como propia, es que al realizar un commit,
en el campo de mensaje, automáticamente se asigna el siguiente mensaje al commit.


5. Referencias.


6. Conclusiones.

¿Podemos dar más facilidades? ya hace 4 años hablábamos de lo mismo en NetBeans contra Bugzilla 😉

Un saludo.

Jose

jmsanchez@autentia.com

1 COMENTARIO

  1. Hola, excelente tutorial.. solo una duda los usuarios que tengan tambien permisos podran entrara usando esa misma ip desde sus ordenadores? esto solo si estamos en la misma red… es correcto o no esta configurada para eso

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad