viernes, 12 de junio de 2009

Instalando Subversion + Hudson + Track

En este post explicare como instalar y configurar estas tres herramientas bajo el ent# /etc/init.d/tomcat5.5 restartorno linux utilizando la distribución Ubuntu 9.04, para realizar instalación es necesario tener una conexión a internet, luego de instalar y configurar las tres herramientas explicare como utilizarlas con Netbenas 6.5. Todos los comando son ejecutados en modo root.

Para estar en modo root en la consola escribimos en la misma

# sudo su

Instalando Subversion

Para la instalación de subversion es necesario instalar el servidor apache:

# apt-get install apache2

luego de la instalación de apache necesitamos los paquetes de subversion y la libreria para apache:

# apt-get install subversion apache2-svn

Ahora crearemos un repositorio para nuestros trabajos,

# mkdir -p /var/svn

entramos a las carpetas creadas y en ellas crearemos nuestro repositorio del proyecto

# cd /var/svn

#svnadmin create practica

luego, hay que crear un grupo al cual llamaremos “svn” y le agregaremos el usuario “www-data”, y le daremos permisos:

# groupadd svn

# add user www-data svn

# chown -R www-data.svn /var/svn/

para poder acceder desde un explorador al repositorio de subversion, crearemos un archivo dentro del directorio /etc/apache2/sites-available. Al archivo lo llamaremos mi-host:

# gedit /etc/apache2/sites-available/mihost

dentro del archivo escribimos los siguiente:

  • Location: Nombre del directorio raíz del repositorio. No se especifica el PATH completo, sólo el PATH a partir de la raíz de documentos del servidor web (podemos tener varios repositorios cada uno apuntando a un lugar del sistema de ficheros).

  • Dav svn: Activamos el repositorio a través del protocolo web-DAV.

  • SVNPath: Ruta completa al repositorio, esta si que es la ruta física del sistema de ficheros.

  • SVNIndexXSLT: Hoja de transformación con la que se visualizará el contenido del repositorio si accedemos desde un navegador.

  • AuthUserFile: Ruta al archivo de los password (puede existir un archivo por repositorio).

  • Require valid-user: Especifica que solo acepta usuarios válidos, o sea aquellos que introduzcan un nombre y contraseña correctos.


Guardamos el archivo, lo siguiente es la activación de nuestro host virtual:

# a2ensite mihost

lo siguiente es la creación de un usuario y password para entrar al repositorio desde el explorador, para eso llenaremos el archivo /etc/apache2/avn-auth el cual contiene los usuarios:

# htpasswd -cm /etc/apache2/avn-auth usuario

el sistema nos pedirá establecer la contraseña para el usuario que ingresamos

reiniciamos el servidor de apache

# /etc/init.d/apache2 restart

ingresamos al navegador web y nos dirigimos al repositorio, en la dirección url escribimos http://localhost/svn/practica/, como podemos observar no tiene gran vista, para agregarle una mejor vista al repositorio, copiamos la hoja de estilo que viene con el servidor apache:

# cp /var/www/apache-default/svnindex.* /var/www/

reiniciamos el servidor de apache

# /etc/init.d/apache2 restart

ingresamos a la url del repositorio http://localhost/svn/practica/ y como podemos observar la vista del repositorio ha cambiado.

Para crear carpetas en el repositorio de la manera mas sencilla instalamos el paquete “rapidsvn”, el cual viene con una interfaz gráfica para que podamos ver nuestro repositorio:

# apt-get install rapidsvn

Para acceder a rapidsvn nos vamos ha aplicaciones>programacion>RapidSVN, en ella podemos ver nuestro repositorio, para crear una carpeta apretamos el click derecho y nos vamos a la opción “make directory” y escribimos el nombre que deseamos que tenga en nuestra carpeta.







Al finalizar la instalación de subversion debera de verse de la siguiente manera


instalando Hudson

para la instalación de Hudon es necesario tener el servidor Tomcat, para instalarlo escribimos lo siguiente:

# apt-get install tomcat5.5 tomcat5.5-admin

ahora hay que configurar los usuarios para poder ingresar a tomcat, para eso editaremos el archivo tomcat-users.xml

# gedit /usr/share/tomcat5.5/conf/tomcat-users.xml

editamos el archivo, en el mismo agregaremos 3 roles “admin, manager, tomcat” y agregaremos un usuario y su contraseña, al usuario le daremos los tres roles que creamos.

guardamos los cambios y reiniciamos tomcat

# /etc/init.d/tomcat5.5 restart

con eso tenemos instalado el servidor tomcat y podremos accesar con nuestro usuario.

para la instalación de Hudson es necesario descargar el .war, lo pueden descargar de aqui http://hudson.gotdns.com/latest/hudson.war

para instalar el war nos vamos al servidor de tomcat, en el navegador web ingesamos el siguiente url http://localhost:8180/manager/html nos pedira nuestro usuario y contraseña, la cual creamos en el archivo xml.

Para poder utilizar Hudson tenemos que desplegar el .war que descargamos, nos vamos a la opción de desplegar, y nos posicionamos en la opción “archivo WAR a desplegar” y presionamos el botón de examinar

una vez localizado el .war presionamos el botón “desplegar” y listo tendremos instalado Hudson en nuestro servidor tomcat, para comprobarlo ingresemos el siguiente url http://localhost:8180/hudson/


Instalación de Trac

para la instalación de trac escribimos lo siguiente en consola:

# apt-get install trac

ahora especificaremos la ruta del proyecto que creamos en Subversion:

# trac-admin /var/svn/practica initenv

ahora crearemos el directorio donde guardaremos nuestros proyectos

# mkdir -p /var/trac/projects/pratrac

# trac-admin /var/trac/projects/pratrac initenv


Al especificar la ruta del Project Enviroment con trac-admin, preguntará por el nombre que le daremos al proyecto, por la Database Connection String (por default sqlite), el tipo de control de versiones (por default svn), y luego la dirección del repositorio (si no queremos enlazarlo con uno lo dejamos en blanco), luego la locación de los templates (default /usr/share/trac/templates directorio donde se instalo trac).

Esto del Database Connection String, es una cadena para especificar los datos del gestor de base de datos que queremos usar. Podemos usar MySQL, PostgreSQL y SQLite, este úlitmo viene por defecto y ese utilizaremos en este ejemplo, en artículos posteriores veremos como se definen las cadenas para MySQL y PostgreSQL.

Ahora para configurar trac en modo de Webserver, es necesario el modo python de apache, para verificar de que este activado el modo apache:

# a3enmod python

si no estaba activado, lo activara y tendremos que reiniciar nuestro servidor apache

# /ete/init.d/apache2 restart

para que se pueda ingresar a Trac desde apache tendremos que crear un archivo en el directorio /etc/apache2/sites-available, al archivo lo llamaremos trac

# gedit /etc/apache2/sites-available/trac

y escribiremos en el lo siguiente



  • Location: Nombre del directorio raíz del proyecto. No se especifica el PATH completo, sólo el PATH a partir de la raíz de documentos del servidor web (podemos tener varios repositorios cada uno apuntando a un lugar del sistema de ficheros).

  • PythonOption TracEnv: Ruta completa al proyecto, esta si que es la ruta física del sistema de ficheros.

  • PythonOption TracUriRoot: Nombre del directorio raíz del proyecto.


Guardamos el archivo y reiniciamos apache:

# /etc/init.d/apache2 restart

y listo tendremos instalado trac en nuestro servidor apache, para ingresar a el nos vamos al navegador web e ingresamos el siguiente url http://localhost/projects/pratrac se vera de la siguiente manera


Creación de un proyecto Java

Para esto utilizaremos el IDE Netbeans 6.5, el proyecto lo cargaremos al repositorio de Subversion en la carpeta “trunk” y lo enlazaremos a Hudson y tambien a Trac.

Como primer paso ingresamos a Netbeans, nos vamos a la opcion Control de versiones>Subversion>extracción nos aparecerá la siguiente ventana preguntándonos el url del repositorio de Subversion, el usuario y la contraseña:

al terminar el sistema nos preguntará si deseamos crear un proyecto al cual le decimos que si, en esta practica se creo un proyecto simple como el “hola mundo” lo llamaremos “analisis2”.

Para exportar el proyecto al repositorio de Subversion, le damos un click derecho al proyecto y nos dirigimos a contro de versiones>exportar a Subversion, y listo nuestro proyecto estara en el repositorio de Subversion.

Ahora uniremos Hudson y Trac al repositorio de Subversion

Como vamos a unirlo con Trac, primero hay que descargar el plugin desde aqui https://hudson.dev.java.net/files/documents/2402/127186/trac.hpi

para instalar el plugin nos vamos al servidor de hudson y nos dirigimos a la Manage Hudson>Manage Plugins>Advance, estando ahi nos vamos a donde dice “Upload Plugin” presionamos el botón de examinar y buscamos el plugin, para finalizar presionamos el boton de “Upload” y listo nuestro plugin de trac estara instalado.

Para unir Hudson a Subversion y Trac, ingresamos al servidor de Hudson y nos vamos a la opcion “New Job”, nos aparecera un asistente amigable, escribimos el nombre del proyecto en mi caso lo llamare “Practica de Analisis 2” en la siguiente pantalla nos aparecerá un formulario el cual llenaremos las siguientes opciones:


  • como lo vamos a unir a Trac en el renglon “Trac website” escribimos la url de trac.

  • En la opción “Source code managment” escogemos la opción de Subversion. Nos pedira la url del repositorio de subversion, si es la primera vez que lo ligamos a subversion nos pedira ingresar el usuario y el password para tener acceso al repositorio de subversion.

Lo salvamos y listo nuestro proyecto de netbeans esta unido a Subversion, Hudson, Trac.

Si entramos al proyecto podremos ver que tenemos hudson ligado a Trac, en el lado izquierdo aparece el simbolo de Trac y su respectivo link.

Ahora para ver si funciona modificamos el código de nuestro proyecto de java en netbenas, cada modificación que hagamos tendremos que darle un commit, para esto hacemos click derecho sobre el proyecto, y nos vamos a subversion>commit

para ver si se han realizado cambios en el proyecto, nos vamos al servidor de hudson, entramos al proyecto y presionamos la opción “Build Now”, para revisar si se han hecho cambios nos vamos a la opción de “Changes”, ahí podremos observar los cambios que se han realizado y podremos ver los detalles de los mismos.

Como muestro a continuación yo he realizado 3 builds.

No hay comentarios:

Publicar un comentario