Instalar gemas en Redmine en Windows

Este tutorial muestra un el paso a paso para la instalación de un plugin en Redmine sobre un Sistema Operativo Microsoft Windows.

Suposiciones:

  • SO: Microsoft Windows Seven/Microsoft Windows Server 2008 o superiores
  • REDMINE: 2.6 o superior
  • RAILS: 3 o superior
  • RUBY: 1.9.3 o superior
  • Base de datos: MySQL 5.5 o superior
  • Servidor Web: Apache 2.2
  • Gema bundler

Abrimos el prompt. Presionamos la tecla «Windows» y en el cuadro de búsqueda escribimos «cmd» y se abrirá la consola de windows.

La otra alternativa es hacer click derecho en el logo «Windows» y seleccionar «simbolo del sistema».

Figura 1 – Acceso a Prompt de Windows

Verificamos donde está instalado Redmine, supondremos en este instalador  que la raíz de Redmine estará ubicada en c:\redmine

Descargamos el plugin que queremos instalar (en el ejemplo: redmine_dashboard)

ingresamos en https://github.com/jgraichen/redmine_dashboard y desgargamos el archivo .zip.

Luego de descargado se envía a la siguiente ubicación y descomprimimos la carpeta allí

c:\redmine\plugins\

Debemos respetar el nombre que definió el desarrollador para el plugin

Una vez ubicado el plugin, a través de la consola nos ubicamos en la raíz de Redmine. Teniendo en cuenta que ya tenemos instalada la gema bundler realizamos la instalación de gemas que pueda necesitar la aplicación.

En la raíz de redmine ejecutamos el siguiente comando.

c:\redmine> bundle install

y se instalarán distintas gemas que el plugin puede necesitar para funcionar

Una vez que se terminó la instalación, realizamos las migraciones en la base de datos para que el plugin funcione correctamente. Siempre desde la raiz de Redmine

c:\redmine> RAILS_ENV=production rake redmine:plugins:migrate

Finalizado esto, reiniciamos el servidor Apache.

Podemos utilizar el comando descripto a continuación desde la consola (donde nombre de servicio por lo general es Apache)

http://www.i4development.com.ar/wp-admin/post.php?post=429&action=editapache -n nombre de servicio -k restart

Verificamos que el plugin esté correctamente instalado ingresando al menú de administración y luego en extensiones. en Administración >> Extensiones

Figura 2 – Menú del Administrador

 

Ante dudas o sugerencias, dejanos un comentario.

 

Modificación de la configuración de correo

Este tutorial mostrará como loguearse en el servidor y modificar los parámetros de configuración del correo para el envío de notificaciones desde Redmine.

Es válido para instalaciones de Redmine implementadas con el servidor web Passenger en cualquier distribución GNU/Linux

Vamos a mostrar dos opciones: Desde Windows y luego desde GNU/Linux.

Loguearse desde Windows

Para ingresar al servidor desde Windows podemos utilizar la terminal Putty (la más popular).
La podemos descargar aquí (elige la arquitectura de tu SO). Para Windows recomendamos siempre el instalador MSI.

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Una vez descargado, lo instalamos y abrimos.
En la siguiente imagen vemos la pantalla un formulario muy bonito donde lo único que nos interesa son los campos superiores «Host Name (or IP address)», «Port» y «Conection Type».

Solo son necesarios los parámetros HostName (nombre de dominio del servidor o ip) y Port (puerto de acceso ssh) y obviamente el tipo de conexión es SSH.

Una vez que llenamos estos campos, presionamos Open, se abrirá una ventana negra pidiéndonos el usuario y luego el password.

Cuando ingresemos el segundo campo no se registrarán campos en la pantalla, esto es por seguridad. Ingresamos la contraseña y tendremos acceso al servidor vía SSH.

Desde GNU/Linux

Desde linux accedemos a la terminal de tu distribución y ejecutamos la siguiente linea:

ssh usuario@mi.servidor.com.ar -p22

En este ejemplo el puerto ssh es 22, no es necesario poner este parámetro cuando utilizamos el puerto estándar, pero si puede ser necesario el mismo cuando el puerto sea distinto.
En ambos casos (Windows o Linux ) una vez ingresados estos datos, el servidor nos mostrará un mensaje similar al siguiente:

The authenticity of host '[mi.servidor.com.ar]:22 ([1.234.56.78]:22)' can't be established.
 ECDSA key fingerprint is SHA128:ed6jIFJDjB8T/IdAadzqU5Y91adVHZCNdlcxdIsEFjqtf60.
 Are you sure you want to continue connecting (yes/no)

Este mensaje nos pregunta si queremos loguearnos en un servidor sobre el cual no podemos asegurarnos su autenticidad, este mensaje siempre nos aparecerá la primera vez. Si nuestra red es segura, escribimos yes y presionamos Enter.

Modificar parámetros

Bueno, ya estamos dentro del servidor, ahora deberás ingresar a la raíz de la aplicación. Ingresa en la terminal la direccion a la raíz.

cd /raiz/de/mi/app

Y ahora, ingresamos a editar el siguiente archivo utilizando el procesador de textos nano.

nano config/configuration.yml

El contenido del archivo tiene el siguiente parámetro. se puede modificar cualquier parámetro, pero siempre manteniendo el formato con el que está configurado para que siga funcionando.

==== SMTP server at example.com using LOGIN authentication and checking HELO for foo.com

email_delivery:
 delivery_method: :smtp
 smtp_settings:
 tls: true
 address: "example.com"
 port: 25
 authentication: :login
 domain: 'foo.com'
 user_name: 'myaccount'
 password: 'password'

una vez modificado se guarda presionando las teclas Ctrl+0, tecleamos Enter, y finalmente Ctrl+X para salir.
Para que se guarden los cambios es necesario reiniciar Redmine. por lo que ejecutamos el siguiente comando en la consola

touch tmp/restart.txt

Con estos comandos finalmente reiniciamos el servidor.
Para probar que se modificó correctamente el servicio ingresamos a Redmine y accedemos (unicamente como administrador) a

Administración >> Configuración >> Notificaciones de Correo >> «Enviar correo de prueba»

Al presionar este enlace en la parte superior nos deberá mostrar una leyenda en verde, todo va bien! «Se ha enviado un correo a micorreo@dominio.com».

Si la leyenda es roja, se muestra el mensaje de error y se deberá verificar la configuración del archivo nuevamente, deberás verificar nuevamente tu configuracion, el mensaje te dirá explicitamente cual es el error.
Una vez modificado los parámetros, es importante desloguearse del servidor sin cerrar la ventana para evitar que un proceso quede huérfano. para esto ejecutamos

exit

Resumen Rápido

Continuar leyendo «Modificación de la configuración de correo»

Extensión Redmine Git Remote

Esta extensión permite clonar y recuperar automáticamente repositorios referenciados desde GitHub/GitLab en la pestaña repositorios de un proyecto en Redmine.
Se define un nuevo tipo de repositorio, GitRemote, el cual le permite asociar un repositorio remoto con su proyecto de Redmine. Primero cree un nuevo repositorio del tipo GitRemote e ingrese la URL Clonada. El identificador y el camino se auto generarán, pero luego usted puede sobrescribirlo.

Para activar, en el proyecto, la funcionalidad se deberá ingresar en Configuración > Módulos > Repositorios

Figura 1 – Módulos del proyecto

Al guardar la configuración luego de la creación del repositorio, los campos identificador y URL se auto generarán (si no se agregaron explícitamente).

Figura 2 – Formulario para crear un nuevo repositorio tipo GitRemote.

Por ejemplo, si usted ingresa https://github.com/dergachev/vagrant-vbox-snapshot como la URL a clonar, se configurará el identificador y el camino del sistema de archivos como sigue:

Identificador: vagrant-vbox-snapshot
Camino: /var/www/redmine/shared/plugins/redmine_git_remote/repos/github.com/dergachev/vagrant-vbox-snapshot

Figura 3 – Repositorio de prueba clonado en el proyecto.

Una vez que la URL remota es validada, la extensión crea un clon limpio del repositorio especificado.

Figura 4 – Pestaña Repositorio, código clonado y detalle de revisiones.

Además es posible mantener actualizado, con los cambios que se realizan en el repositorio original, el código que se encuentra en el proyecto.

Esta extensión es un desarrollo iniciado hace casi tres años. Realizado por AlexDergachev, y está disponible en https://github.com/dergachev/redmine_git_remote.

Actualmente es compatible con Redmine 3.3.x, 3.2.x, 3.1.x, 3.0.x, 2.5.x. Es necesario disponer de los siguientes paquetes en el servidor de Redmine:

  • git 1.7.5+ – mínimamente para soportar get remote add --mirror=fetch origin URL
  • ssh-keyscan.
  • ssh-keygen.

También se pueden encontrar mas detalles en http://www.redmine.org/plugins/redmine_git_remote

El modelo Kanban y Redmine

Muchas organizaciones necesitan establecer metas, organizar los procesos que las mantiene vivas en el mercado. En el marco de las herramientas ágiles se encuentra Kanban.

Que es Kanban

Kanban es una metodología enfocada en procesos repetitivos. Pensada por los Japoneses (Toyota), en 1953, para mejorar la gestión de sus productos, evitar el gasto innecesario de materia prima y disponer de materiales en el momento justo.
La metodología permite establecer una serie de etapas medibles, controlables y modificables para el desarrollo de un producto. Cada etapa posee una cantidad máxima de items definida, que pueden ser trabajados al mismo tiempo (WIP: Work in progress), por lo tanto controla la sobrecarga de trabajo.  Dentro de cada etapa existen responsables que realizan las actividades con un determinado rol, que puede cambiar de etapa a etapa.

Kanban Panel
Figura 1 – Ejemplo Tablero Kanban

Este modelo tiene distintas similitudes y diferencias con el modelo Scrum. Las ventajas de utilizar la metodología Kanban se suscitan en las siguientes:

  • Definición de un ciclo iterativo de actividades a partir de etapas
  • Definición de un WIP por cada etapa
  • Definición de un WIP por cada usuario

Todo esto nos servirá para poder monitorizar los tiempos en que se completan etapas y productos terminados. Además aprender sobre como mejorar estos tiempos y optimizar cada una de las etapas.

Cada ítem, posee una tarjeta que describe el producto y la etapa en la que se encuentra. Esta tarjeta es clave, ya que aloja información precisa acerca de la producción, códigos especiales o información para controles de calidad.

Figura 2 – Tarjeta Kanban de Producto

Redmine

Redmine es un gestor de proyectos web Open Source basado en la Tickets, es una sistema que ya está en su versión 3.x, es posible instalarlo en sistemas operativos GNU/Linux, Microsoft, Mac OS entre otros según los desarrolladores. Entre otras características permite trabajar con distintos perfiles de usuarios, múltiples proyectos, proyectos anidados, agregar campos personalizados, trabajar con repositorios,.. entre otras capacidades. Lo distinguible para nosotros es que podemos modificar la estructura de Redmine y podemos agregarle funcionalidades a partir de extensiones.

La Funcionalidad Kanban

Hace tiempo es posible utilizar Redmine con Kanban, nosotros probamos ekanban. Este Plugin permite utilizar el modelo en Redmine y generar un ciclo de trabajo dentro de un proyecto a partir de diferentes configuraciones.

Figura 3 – Tablero Kanban en Redmine

Compatible, según los desarrolladores para las versiones de redmine 2.1.x y 2.2x, nosotros pudimos probarlo exitosamente en una versión 2.6.5 en nuestros servidores. Posee diversas características a mejorar, pero eso no le quita la funcionalidad que nos facilita al poder trabajar con Kanban sobre Redmine.