El tema de hoy es integracion continua, que es esto, para conocerlo tenemos la definicion de wikipedia que me parecio muy interesante.
Definicion: La integracion continua (continuous integration en ingles) es una metodologia informatica propuesta inicialmente por Martin Fowler que consiste en hacer integraciones automaticas de un proyecto lo mas a menudo posible para asi poder detectar fallos cuanto antes. Entendemos por integracion la compilacion y ejecucion de tests de todo un proyecto.
El proceso suele ser, cada cierto tiempo (horas), descargarse las fuentes desde el gestor de versiones (por ejemplo CVS, Subversion o Visual Source Safe) compilarlo, ejecutar tests y generar informes.
Para esto se utilizan aplicaciones como Continuum, CruiseControl o Anthill (para proyectos Java) o CruiseControl.Net para .Net, que se encargan de controlar las ejecuciones, apoyadas en otras herramientas como Ant o Maven (tambien para proyectos Java), o Nant (para .Net) que se encargan de realizar las compilaciones, ejecutar los tests y realizar los informes.
A que viene todo esto, simple, desde julio estoy trabajando en una software factory y para uno de los proyectos comenzamos a utilizar contiuum que como ya vimos es una aplicacion para integracion continua.
La cuestion fue asi, vino Beto y me comento como era la movida y que es lo que habia que instalar, por lo cual me puse a buscar algo de info mas una mano que me dio el y nos pusimos a laburarlo. Desde ya tengo que decirles que salio 10 puntos asi que ahora paso a explicarles como instalarlo y configurarlo.
Como instalar Continuum (How to install Continuum):
Prerequisitos:
Linux: en nuestro caso estamos utilizando un Ubuntu Server Feisy Fawn (7.04). Download
Luego de bajar la distro e instalar, se recomienta realizar un sudo apt-get dist-upgrade y luego instalar apache2, mysql, xorg y firefox ya que seran usados por continuum.
sudo apt-get install xorg firefox mysql apache2 mc
Continuum: Bajarlos desde este link (al momento del post version 1.1 beta 2).
Java JDK: Bajar desde este link (en nuestro caso utilizamos el ultimo release de la JDK 1.5 al momento 1.5.0_12)
Maven: Bajar desde este link (Version 2.0.7)
Tomcat: Bajar desde este link
Hacer loggin sobre el sevidor que vamos a instalar continuum, y generamos un usuario llamado continuum.
Una vez creado el usuario hacemos loggin y comenzamos a instalar el software:
Asumo que tienen instalado todo el software de base, como ser apache, mysql, xorg, firefox.
Descomprimimos tomcat, continuum y maven y /opt de la siguiente forma:
tar zxvf paquete.tar.gz o tar jxvf paquete.tar.bz2 o tar xvf paquete.tar segun el caso.
luego “instalamos” la JDK de sun, esto lo podemos hacer de 2 formas:
Le damos permiso de ejecucion al .bin que bajamos utilizando el comando: sh jdk-1_5_0_12-linux-i586.bin o cambiando los permisos:
chmod 777 jdk-1_5_0_12-linux-i586.bin y luego ./jdk-1_5_0_12-linux-i586.bin
movemos la carpeta que nos creo a /opt
vamos a nuestro home ejecutando en la consola cd y editamos el archivo .bashrc
al final del archivo deberiamos agregar unas lineas de este estilo:
export JAVA_HOME=/opt/jdk1.5.0_12
export PATH=$PATH:/opt/maven-2.0.7/bin
export DISPLAY=:0
export MAVEN_HOME=/opt/maven-2.0.7
nos deslogueamos y volvemos a loguear, luego de hacer esto corremos export en la consola y deberiamos poder visualizar estas variables ya definidas.
luego de hacer esto corremos mvn install para q nos genere el .m2 en el home del usuario.
ahora nos aseguramos que el usuario continuum sea owner del directorio continuum-1.1-beta-2 y del tomcat, asi que vamos a /opt y corremos lo siguiente:
chown -R continuum.continuum continuum-1.1-beta-2
chown -R continuum.continuum tomcat
ahora pasamos a editar el arhivo de configuracion de continuum:
mcedit /opt/continuum-1.1-beta-2/conf/plexus.xml
y buscamos el tag <jetty.port>8080</jetty.port>
lo cambiamos por <jetty.port>8088</jetty.port>
ya que nuestro tomcat va a estar levantando en el puerto 8080
Iniciamos continuum de la siguiente manera:
continuum@server:/opt/continuum-1.1-beta-2/bin/linux-x86-32$ ./run.sh
Una vez hecho esto estamos listos para iniciar continuum, ahora solo resta registrar el usuario administrador, definir un proyecto y sentarnos con el PL para continuar configurandolo, ya que ahora depende de el poner los parametros correspondientes en el pom.xml y el settings.xml
english
español


