Hudson Y Trac

  • Uploaded by: Mario Ramon Castellanos Arana
  • 0
  • 0
  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Hudson Y Trac as PDF for free.

More details

  • Words: 2,432
  • Pages: 28
Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ciencias y Sistemas Análisis y Diseño de Sistemas 2 Ing. Mario Reyes Aux. Víctor Orozco y Jennifer Donis Martinez

Practica # 2

Mario Ramón Castellanos Arana 2005 – 12086

Guatemala, Agosto de 2009

Instalación y Configuración de Hudson en Ubuntu (9.04) Hudson es una aplicación opensource que nos sirve para implementar integración continua en nuestro proyecto. Soporta Java, PHP, .Net y lo mas importante es su gran cantidad de plugins.

Instalación de Hudson Los requisitos antes de instalar Hudson es tener Java (JRE o JDK) en nuestro equipo (preferible la versión mas reciente, Java 6 update 15). También se debe contar con un contenedor de servlets en el caso que vayamos a instalar Hudson por despliegue. Primero descargar el paquete WAR en el sitio oficial. https://hudson.dev.java.net/

O ejecutamos el siguiente comando sobre el archivo war en la carpeta donde lo tengamos. $ java -jar hudson.war El cual nos crea una carpeta oculta llamada “.Hudson” en el directorio actual, lo mas aconsejable es hacerlo en la carpeta del usuario, en mi caso /home/mario.

Seguidamente accedemos al explorador con la dirección: http://localhost:8080/ Nota: Hay que tener en cuenta que ningún servidor debe estar utilizando el puerto 8080. Si todo esta bien nos aparecerá la siguiente pantalla que es la pagina principal de Hudson.

Y con esto ya tenemos instalado Hudson en nuestra maquina. Nota: cada vez que queramos acceder a Hudson se debe de ejecutar el comando anterior. La otra forma es hacer un despliegue en la carpeta “webapps” del contenedor, Tomcat en el mayor de los casos. Para hacerlo de esta forma recomiendo esta pagina: http://asaes.wordpress.com/2009/06/14/instalacion-de-subversion-trac-hudson-partepractica/

Instalación y Configuración de Trac en Ubuntu (9.04) Trac es una aplicación opensource que nos permite la gestión de proyectos y seguimiento de errores así como también tener un sistema wiki mediante un entorno web. Se integra con subversión, y utiliza SQLite (por default), MySQL y PostgreSQL para almacenar la información. En este artículo veremos como instalar Trac en Ubuntu, como módulo python de apache y usando sqlite. Entonces es necesario tener instalado y funcionando un servidor web Apache, Subversion y SQLite.

Instalación y Configuración con Subversion Los requisitos para Trac son los siguientes: • Python (>=2.3) • Setuptools (simplifica la instalación)

• • •

Neon (cliente webdav) Clearsilver (sistema de plantillas) Apache 2 con mod_python habilitado

Primero ejecutar el comando para descargar trac y sus dependencias: $ sudo apt-get install trac libapache2-mod-python

Una vez descargado todos las dependencias creamos un proyecto con la siguiente sintaxis. Creamos el directorio: $ sudo mkdir -p /var/trac/projects/practica2 Luego ejecutamos el siguiente comando para especificar el Project Enviroment $ sudo trac-admin /var/trac/projects/practica2 initenv Entonces nos aparecerá varias preguntas: • Nombre del proyecto: practica2 (cualquiera nombre y presionamos Enter) •



Database Connection String(por default sqlite): la dejamos en blanco sino queremos usar otra cadena datos como para MySQL y PostgreSQL (presionamos Enter).

El tipo de control de Versiones (por default svn): svn ( por default es SVN para Subversion, presionamos Enter).



Dirección del repositorio de Subversion: /var/svn-repos/practica2 (path hacia el directorio de Subversion que queremos enlazar en mi caso practica2, presionamos Enter).

Si todo esta bien nos aparecerá como en la siguiente imagen.

Ahora le tenemos que dar permiso al usuario de Apache (www-data) para que pueda leer y escribir sobre la carpeta del proyecto Trac, en mi caso a la carpeta practica2. $ sudo chown -R www-data:www-data /var/trac/projects/practica2 Ahora para acceder desde el navegador al manejador de Trac solamente ingresamos desde un terminal el siguiente comando: $ sudo tracd --port 8000 /var/trac/projects/practica2 Luego entramos a: http://localhost:8000/practica2 y sino nos muestra ningún error la pagina se debería ver así.

Integración con Apache Ahora vamos a enlazarlo con el servidor Apache para que tengamos un entorno WEB. Para esto es necesario el modo python de apache, para verificar de que este activado el modo apache ejecutamos en consola: $ a3enmod python o $ a2enmod python Si no estaba activado lo hará y tendremos que reiniciar el apache. Para que el Trac funcione con nuestro Apache tendremos que crear una nueva directiva Location, podemos hacerlo añandiendolo en el archivo /etc/apache2/sites-available/default o crear uno nuevo, para mejor organización recomiendo crear uno nuevo, en este caso sería el archivo /etc/apache2/sites-available/trac. Y agregamos las siguientes lineas: SetHandler mod_python PythonInterpreter main_interpreter PythonHandler trac.web.modpython_frontend PythonOption TracEnv /var/trac/projects/practica2 PythonOption TracUriRoot /trac/practica2 #Autenticacion

AuthType Basic AuthName “Practica 2 - Trac” AuthUserFile /var/trac/projects/practica2.htpasswd Require valid-user
Donde: Location: Nombre del URL para tener acceso al proyecto via WEB. PythonOption TracEnv: Ruta completa al proyecto, esta si que es la ruta física del sistema de ficheros. PythonOption TracUriRoot: Nombre de la URL o Location del proyecto, en este caso “/trac/practica2”. Guardamos y ejecutamos el siguiente comando para habilitar el modulo. $ sudo a2ensite trac Y a continuación procedemos a configurar la Autentificación para tener nuestro proyecto mas seguro. En la parte de Autentificación del archivo de “trac” #Autenticacion AuthType Basic AuthName “Practica 2 - Trac” AuthUserFile /var/trac/projects/practica2.htpasswd Require valid-user El archivo /var/trac/projects/practica2/practica2.htpasswd contendrá los usuarios y passwords para acceder al trac, así para agregar usuarios usamos el comando htpasswd: $ sudo htpasswd -cm /var/trac/projects/practica2/practica2.htpasswd usuario Donde “usuario” es el nombre del usuario, en mi caso “mario”, luego nos pide la contraseña y su confirmación. Y asignamos un administrador al proyecto: $ sudo trac-admin /var/trac/projects/practica2 permission add usuario TRAC_ADMIN

Donde “usuario” es el nombre del usuario, en mi caso nuevamente “mario”.

En esta imagen podemos ver los comandos que se ejecutaron exitosamente. Y por ultimo reiniciamos el apache y verificamos el sitio: $ sudo /etc/init.d/apache2 restart Acceso: http://localhost/trac/practica2 Listo ya tenemos el Trac funcionando, enlazado a un proyecto de Subversion.

Enlazar Trac con Hudson Para una mejor administración, control y monitoreo de nuestros proyectos es necesario unir Trac con Hudson y para ello se necesita instalar el plugin de Trac en Hudson. El plugin se puede descargar desde el siguiente enlace: https://hudson.dev.java.net/files/documents/2402/127186/trac.hpi Luego entrar al “Manage Plugins” desde Hudson y subir (“Upload”) e instalar el plugin. Pero en nuestro sitio de Hudson se puede encontrar este plugin. Primero ingresar al sitio de Hudson y luego a “Manage Hudson” donde se encuentran las opciones de configuración y administración.

Luego en la opción de plugins “Manage Plugins”

Seguidamente en la opción “Available”

Y buscamos el plugin de Trac “Trac Plugin”.

Marcamos el Plugin y presionamos en “Install”. Luego reiniciamos Hudson y Apache Tomcat.

Después verificamos si efectivamente esta instalado el Plugin para Trac.

Pero para que todo funcione bien debemos de modificar estos 2 parámetros en nuestro proyecto creado en Hudson: Trac website:

es el URL del proyecto en Trac, ejemplo: http://localhost:8000/practica2 Repository browse: Es el URL del repositorio WebDAV de Subversion, ejemplo: http://localhost/svn/practica2 Y con esto tenemos configurado a Hudson para que soporte Trac.

Tutorial de Hudson con Subversion y Trac Creando Proyecto en Netbeans Vamos a unir un proyecto de Netbeans con Subversion, Hudson y Trac. Primero crear el proyecto y si ya se tiene uno creado omitir este paso. El proyecto es en PHP y tiene como url: http://localhost/practica2_php/ Ahora vamos a agregar nuestro proyecto al repositorio de Subversion en nuestra maquina, en mi caso llamado “practica2” con path /var/svn-repos/practica2. Notas a tomar en cuenta: • Tenemos que tener estructurado nuestro repositorio con los 3 directorios principales ya que el proyecto creado en Netbeans se va a agregar a la carpeta “Trunk” del repositorio. •

Cambien tenemos que poder acceder al repositorio de “practica2” vía web, sino hay que agregar el Location, pero esto esta en el manual anterior donde se configura subversion, WebDAV y Netbeans.

Configurando Java y Ant Ahora vamos agregar el path de Java y el Ant a Hudson para que pueda hacer los builds correctamente. Ingresamos a la pagina principal de Hudson, luego en “Manage Hudson” y por ultimo en “Configure System”.

Y añadimos el path de Java y de Ant. El path de java varia con el tipo de versión.

Si queremos instalarlos automáticamente Hudson nos da la opción, para ello hay que marcar la opción “Install automatically” sino hay que dejar desmarcada la opción (marcada en la imagen por los círculos). Por ultimo guardamos los cambios y listo.

Con esto ya tenemos configurado nuestro Hudson para realizar construcciones o builds correctamente.

Configurar Hudson para que soporte PHP con el plugin Phing Para poder construir proyectos PHP necesitamos el plugin de Phing. Este se encuentra en el repositorio de plugins de Hudson. Lo seleccionamos y lo instalamos.

Reiniciamos y ya podemos construir exitosamente proyectos PHP. Algunos otros plugins recomendados para PHP son los siguientes: • • •

Hudson Checkstyle Plug-in Hudson Clover plugin Hudson PMD Plug-in

Creando un proyecto en Hudson con Subversion y Trac Una vez enlazado el proyecto de Netbeans con el repositorio y configurado los paths de Ant y Java, procederemos a crear un nuevo en Hudson y así enlazar el repositorio del proyecto de Subversion (creado en Netbeans) con Hudson y Trac. Creamos un nuevo proyecto en Hudson, clic en “New Job”.

Luego escribimos el nombre y seleccionamos la segunda opción “Build a free-style software project”

Presionamos ok y nos aparecerán varias opciones en las cuales 2 tenemos que agregar para que se enlace con Subversion y Trac. En la primera se coloca la URL del proyecto de Trac al cual vamos a enlazar, tiene que ser la url del modulo de apache, en mi caso es: http://localhost/trac/practica2 La segunda es el repositorio de Subversion, debemos seleccionar la opción Subversion e ingresar el URL del repositorio al que queremos enlazar, tiene que ser la url del modulo de apache, en mi caso: http://localhost/svn/practica2/ La imagen siguiente muestra como mas o menos quedaría.

Guardamos los cambios.

Como podemos ver en la imagen anterior ya tenemos creado el proyecto y enlazado con Subversion y Trac (marcado en el circulo). Ahora procederemos a crear el primer Build, presionamos en “Build Now”.

Y vemos que se ha creado el Build en “Build History”.

Accedemos al Build construido, en mi caso al numero 2 y nos muestra los datos.

Entramos a la opción “Console Output” para ver los datos mas detalladamente.

En la imagen marcada con el circulo vemos el numero de Build. Y con esto creamos el Build exitosamente. Para crear Construcciones exitosas solamente hay que hacer un “Build Now”.

Configurar Hudson para efectuar 3 construcciones exitosas a partir del repositorio web de Subversion Ahora mostrare 3 builds mas con cambios en el proyecto de Netbeans. Agregando archivos. Vemos que estamos en la Revisión 7 en el repositorio de Subversion.

Construcción 1:

Se agrego el “archivo1.php” Revisión 8.

Construcción 2:

Se agrego el “archivo2.php”. Revisión 9.

Construcción 3:

Se agrego el “archivo3.php” Revisión 10.

Y con esto finalizamos las 3 construcciones exitosas en Hudson. Ahora vamos a interactuar con Trac en el sitio del proyecto, ingresando desde Hudson.

O por el URL: http://localhost/trac/practica2

Tutorial con Trac Ya hechos los builds en Hudson en el tutorial anterior ahora vamos a ver algunas opciones y características que nos provee Trac.

Viendo los Cambios Para empezar vamos a ver los cambios (revisiones en Subversion) desde el sitio ingresando a la opción “Timeline” desde el sitio principal.

Y podemos ver los cambios realizados en el proyecto.

Explorando el Código Fuente Desde Trac podemos ver el código fuente del proyecto ingresando a la opción “Browse Source” desde el sitio principal.

Podemos ver en la imagen siguiente todo el código del proyecto.

Lo podemos hacer también desde Hudson ingresando a la opción de “Workstation”, luego ingresamos al proyecto y podemos explorar el código.

Aquí podemos ver todo el código fuente del proyecto, podemos descargarlos o ver el código desde el explorador.

Y así terminamos el tutorial de Hudson y Trac.

Hudson vs Maven 2 Maven2 Maven es un framework de gestión de proyectos de software, basado en POM (project object model) que nos proporciona funcionalidades desde la compilación hasta la distribución, despliegue y documentación de los proyectos. En pocas palabras podemos describirlo: “Maven es un sistema de estándares, un repositorio, y un software usado para manejar y describir proyectos. Define un ciclo vital estándar para la construcción, prueba, y despliegue de componentes del proyecto. Proporciona un marco que permita la reutilización fácil de la lógica común de la estructura para todo los proyectos que siguen los estándares Maven.” Además una de las virtudes de Maven es que para construcciones estándar no necesitamos crear ningún script de construcción, ya que casi todas las tareas para la construcción de proyectos ya existen goals creados en Maven (los goals son el equivalente a los target de ant). También ofrece un conjunto de goals en su instalación, en lo que podríamos llamar su núcleo. Luego existen gran cantidad de plugins satélites para distintas funcionalidades, y que permiten integrar Maven con otros sistemas. La instalación es un poco mas complicada que Hudson ya que se descarga un archivo .tar.gz y que hay que instalar desde consola y modificar las variables de entorno, un tanto complejo, pero tenemos la ventaja de poder ejecutarlo desde consola sin necesidad de un servidor web. También tiene integración con varios IDE's como Netbeans y Eclipse.

Hudson Hudson tiene casi las mismas características y objetivos que Maven 2, soporte de Plugins, integración con IDE's, etc. pero la gran desventaja de Maven y que por eso Hudson es mucho mejor es porque en Maven todo se hace desde consola mientras que en Hudson tenemos un entorno Web.

Trac vs Mantis Mantis es un gestor de proyectos en formato de aplicación web, desde el punto de vista de bugs, roadmap tickets y un estilo al Trac. A continuación doy una comparación entre Trac y Mantis tal vez no la mas acertada pero lo hago a mi criterio. Trac es muy extenso y mas popular que Mantis, varios proyectos famosos como Pidgin lo utilizan, esta hecho en lenguaje Python y eso es una gran ventaja pero el problema es que en algunos de servidores es muy difícil de instalar Trac y la mayoría usan PHP. Con Mantis no pasa eso porque esta basado en PHP y es muy fácil de instalar como cualquier proyecto PHP, una gran ventaja es que la mayoría de servidores usan LAMP lo que hace a Mantis mas adaptable al proyecto. Aunque no he probado Mantis me parece que trae las mismas características que Trac. Los 2 soportan las bases de datos MySQL y PostgreSQL. A continuación muestro una comparación mejor.

Fuentes Hudson http://eliabd.blogspot.com/2009/06/usando-subversion-hudson-y-trac-en.html http://chany1989.blogspot.com/2009/06/instalando-subversion-hudson-track.html http://asaes.wordpress.com/2009/06/14/instalacion-de-subversion-trac-hudson-partepractica/

Trac http://eliabd.blogspot.com/2009/06/usando-subversion-hudson-y-trac-en.html http://sonidolibre.wordpress.com/2008/09/11/trac-instalacion-y-primeras-configuraciones/ http://chany1989.blogspot.com/2009/06/instalando-subversion-hudson-track.html

Otros http://toptopic.wordpress.com/2009/02/26/php-and-hudson/ http://www.tomatesasesinos.com/sandiaWeblog/2008/09/03/ando-probando-el-mantis-bugtracker-truco-para-deshabilitar-login/ http://www.chuidiang.com/chuwiki/index.php?title=Integraci%C3%B3n_CVS %2C_Hudson%2C_Maven_y_Archiva_en_proyectos_Java

Sitios Oficiales Subversion:

http://subversion.tigris.org/

Apache Tomcat :

http://tomcat.apache.org/

Hudson:

https://hudson.dev.java.net/

Trac:

http://trac.edgewall.org/

Phing:

http://phing.info/trac/

Mantis:

http://www.mantisbt.org/

Maven:

http://maven.apache.org/

Related Documents

Hudson Y Trac
May 2020 8
Trac
April 2020 15
Trac
October 2019 12
Trac
June 2020 8
Michael Hudson
November 2019 23

More Documents from "camilo atilua"