Instalación de Subversion + Trac + Hudson (Parte Practica)
Pasos para instalar subversion, trac y hudson en Debian Lenny
Instalando apache con webDAV
1. Instalar los paquetes Apache2, Subversion y libApache2-svn como usuario root.
$ su
$ apt-get install apache2 subversion libapache2-svn
2. Creamos una carpeta que sera nuestro repositorio
$ sudo mkdir /var/svn-repos
3. A continuación le indicamos a Subversion que es un repositorio:
$ svnadmin create /var/svn-repos/practica1
4.Creamos un grupo y le agregamos un usuario
$ groupadd subversion
$ addgroup usuario subversion
5. Ponemos permisos para que el servidor web pueda modificar el repositorio:
$ chown -R www-data.subversion /var/svn-repos
$ chmod -R 770 /var/svn/repos/*
Configurar apache con soporte de webDAV y enlazarlo con subversion
6. Modificamos el archivo siguiente:
$ vim /etc/apache2/mods-available/dav_svn.conf
7. Le agregamos las siguientes lineas al final:
<Location /svn_p1>
DAV svn
SVNPath /var/svn-repos/practica1
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
8. Creamos el archivo de autenticación:
$ htpasswd -c /etc/subversion/passwd usuario
9. Reiniciamos apache
$ /etc/init.d/apache2 restart
10. Abrimos el explorador e insertamos la direccion:
http://localhost/svn_p1
11. Nos muestra lo siguiente
svn – Revision 0: /
Creamos un proyecto nuevo en el repositorio
12. Lo primero es, en un directorio temporal, crear el directorio del proyecto:
~$ cd tmp/
~/tmp$ mkdir hola_mundo
Creación de un repositorio con la estructura básica (trunk,branches,tags)
13. Se acostumbra tener tres directorios dentro de un proyecto: branches donde están las ramas del proyecto, tags las diferentes versiones y trunk donde está la versión actual del proyecto. Para ello realizamos lo siguiente:
~/tmp$ cd hola_mundo/
~/tmp/hola_mundo$ mkdir branches tags trunk
14. A continuación importamos todo eso al repositorio:
~/tmp/hola_mundo$ cd ..
~/tmp$ svn import hola_mundo http://localhost/svn_p1 -m "Creando la estructura del proyecto"
Ya podemos borrar el archivo temporal.
16. El siguiente paso es obtener una copia de trabajo de los archivos:
$ svn checkout http://localhos/svn_p1/trunk practica1
Fijese que obtuvimos trunk, (no es necesario por ahora los otros directorio). El practica1 del final es una indicación del directorio donde se va a grabar la copia de trabajo.
Creación de un proyecto java, hola mundo, y ubicarlo en el trunk del respositorio
17. A continuación vamos a adicionar dos nuevos archivos al proyecto: hola_mundo.java. Lo primero es crear el archivo:
$ cd practica1/
$ vim hola_mundo.c
con el siguiente contenido:
public class HolaMundo {
public static void main(String[] args) {
System.out.println("Hola Mundo");
}
}
18. Lo adicionamos al proyecto:
$ svn add hola_mundo.java
19. Finalmente enviamos todos los cambios al repositorio:
$ svn commit -m "Se adicionó el programa hola_mundo.java"
Modificar el aspecto utilizando un css elaborado para darle buen
aspecto al front-end web de subversion
20. Descargamos ReposStyle.zip aqui
21. Lo descomprimos en la carpeta root de apache
$ cd /var/www
$ unzip carpeta_donde_se_descargo/repos-style-2.0.zip
22. Agregamos la siguiente linea despues de SVNPath /var/svn-repos/practica1
SVNIndexXSLT "/repos-web/view/repos.xsl"
23. Cambiamos los permisos a la carpeta:
$ chown -R www-data.subversion /var/www
$ chmod -R 755 /var/www
24. Reiniciamos apache
$ /etc/init.d/apache2 restart
25. Verificamos la pagina
http://localhost/svn_p1
Listo!!!!
Instalando Trac
1. Primero instalamos algunos paquetes para que funcione trac con subversion
$ apt-get install trac python-setuptools libapache2-mod-python
2. Editamos un archivo de apache para integrar python
$ vim /etc/apache2/sites-available/default
3. La seccion Directory /var/www/ debe quedar asi
[...]
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On
[...]
4. Creamos la base de datos de trac
$ mkdir /srv/trac
5. Inicializamos el proyecto
$ trac-admin /srv/trac/practica1 initenv
6. Dejamos todas las opciones por default menos “Path to repository [/path/to/repos]” que seria:
Path to repository [/path/to/repos]> /srv/svn-repos/practica1
7. Le cambiamos propietario a la carpeta
$ chown -R www-data.www-data /srv/trac/proyecto
8. Es el momento de comprobar que trac y su unión con el repositorio de subversion funcionan correctamente, para ello lanzaremos el servidor incluido en trac:
$ tracd -p 8080 /srv/trac/proyecto
9. Abriendo la URL http://localhost:8080/ deberíamos ver disponible nuestro proyecto, “practica1“.
10. Comprobamos que la función de “Browse Source” funciona correctamente.
Configurar trac para que soporte el proyecto creado en subversion
11. Bien, ahora editamos la configuración para que Apache pase las peticiones que vayan a /trac a nuestro conjunto de proyectos en /srv/trac.
Editando el fichero /etc/apache2/conf.d/trac.conf añadimos antes del cierre de lo siguiente:
$ vim /etc/apache2/conf.d/trac.conf
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption PYTHON_EGG_CACHE /tmp/python_egg_cache
PythonOption TracEnvParentDir /srv/trac
12. Reinciamos Apache:
$ /etc/init.d/apache2 restart
13. Probamos la pagina
http://localhost/trac
Listo!!!
Instalando Hudson
1. Antes de poder instalar Hudson debemos instalar java y tomcat, lo hacemos de la siguiente manera:
$ apt-get install sun-java6-jdk
$ apt-get install tomcat5.5 tomcat5.5-admin tomcat5.5-webapps
2. Modificar el archivo para que tomcat deshabilitarle la seguridad ya que si no le agregamos esta linea nos muestra error
$ vim /etc/default/tomcat5.5
3. Agregar al final
TOMCAT5_SECURITY=no
4. Probamos si tomcat esta funcionando escribiendo en un browser: http://localhost:8180. Si todo anda bien deberemos crear un usuario administrador con un rol. Para eso editamos el archivo tomcat-users.xml y luego reiniciamos el servidor:
$ vim /var/lib/tomcat5.5/conf/tomcat-users.xml
<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
-->
<role rolename="manager"/>
<role rolename="admin"/>
<user username="user" password="secreto" roles="manager"/>
<user username="hudson-admin" password="secreto" roles="admin"/>
</tomcat-users>
5. Abrimos el administrador de Tomcat, aquí nos pedira el usuario y contraseña que recien agregamos en tomcat-users.xml. Para esto escribimos la siguiente direccion en el browser: http://localhost:8180/manager/html. En la sección apropiada agregamos el archivo hudson.war para poder desplegarlo en el contenedor.
6. Creamos el directorio de trabajo de Hudson y le otorgamos permisos:
$ mkdir /home/hudson
chown -R tomcat55:nogroup /home/hudson/
chmod -R 755 /home/hudson/
7. En el archivo /etc/init.d/tomcat6 agregamos a la variable JAVA_OPTS la variable -DHUDSON_HOME con el valor del directorio de trabajo de hudson que definimos en el paso 6.
$ vim vim /etc/init.d/tomcat5.5
8. Debe quedar asi
JAVA_OPTS="$JAVA_OPTS -Djava.endorsed.dirs=$CATALINA_HOME/endorsed -Dcatalina.base=$CATALINA_BASE -Dcatalina.home=$CATALINA_HOME -Djava.io.tmpdir=$CATALINA_BASE/temp -DHUDSON_HOME=/home/hudson"
9. Reiniciamos Tomcat
$ /etc/init.d/tomcat5.5 restart
10. Bueno…ahora el ultimo paso es probar si hudson esta andando escribiendo en el browser la dirección: http://localhost:8180/hudson
Configurar hudson para que efectue al menos 3 construcciones exitosas a partir del repositorio web
11. Antes debemos enlazar nuestro repositorio con hudson. Para ello nos vamos a la opcion Manage Hudson –> Configure System
12. Tenemos que añadir el path del JDK
13. Tenemos que añadir el path de Ant
14. Guardamos con el boton Save
15. Ahora creamos un nuevo Job
16. Elegimos el nombre y elegimos la opcion “Build a free-style software project”y le damos Ok
17. Ahora hay que definir donde esta nuestro repositorio, en nuestro caso Subversion y colocamos la URL de nuetro Repositorio, click en Save.
Enlazar trac con la exploración de hudson mediange el plugin de
hudson y trac.
18. Para añadir el plugin hay que ir a la opcion Manage Hudson –> Manage Plugins y buscamos el plugin lo habilitamos y listo.
19. Ahora nos vamos al Job creado y nos vamos a la opcion Configure y ya esta habilitada la opcion Trac Website, escribimos la URL de trac y listo.
20. Para crear construcciones exitosas hay que darle la opcion Build Now y Listo





















L0rd5had0w respondidos:
Mano que te puedo decir es un Post excelente bien explicado y bien detallado insisto te pasaste con este gran aporte solo un dato:
A mi en particular en lugar de editar el archivo /etc/apache2/conf.d/trac.conf me funciono editando el fichero /etc/apache2/sites-available/default añadiendo antes del cierre de lo siguiente:
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /srv/trac
PythonOption TracUriRoot /trac
Forzamos la recarga de la configuración de Apache:
/etc/init.d/apache2 reload
y todo excelente…!! XD lol
Junio 25, 2009 at 4:59 am. Permalink.