Catálogo de servicios Autentia

spacer
spacer

Síguenos a través de:

spacer spacer spacer spacer spacer spacer

ltimas Noticias

» Atencin, APLAZADO Estreno ltimo captulo de Terrakas

» Vendedor: Soy inseguro, filtra o elige por mi: si quieres que te compre.

» Comentando el libro: El arte de pensar, de Rolf Dobelli

» Ya est a la venta mi segundo libro: Planifica tu xito, de aprendiz a empresario

» Ya esta disponible en eBook mi primer libro: Informtica Profesional

Histrico de noticias

ltimos Tutoriales

» Creacin de presentaciones con PowToon

» jBPM Form Builder: generacin de formularios para jBPM5 y su integracin en Guvnor.

» Promesas: Organiza tu cdigo Javascript/Coffeescript

» jBPM5 Console Server and Human Task Server: instalacin y configuracin

» Spring Security: haciendo uso de un servidor LDAP embebido.

ltimos Tutoriales del Autor

» Instalacin de Nexus en un servidor Tomcat

» Gestores de repositorios Maven

» Simulacin de navegacin manteniendo la sesin con wget

» Spring Security, Single Sign-On bajo plataformas Windows con Active Directory y Kerberos V5

» Configuración de aplicaciones multientorno con Maven

Categorías del Tutorial

spacer Seguridad

spacer Maven

ltimas ofertas de empleo

2011-09-08
spacer Comercial - Ventas - MADRID.

2011-09-03
spacer Comercial - Ventas - VALENCIA.

2011-08-19
spacer Comercial - Compras - ALICANTE.

2011-07-12
spacer Otras Sin catalogar - MADRID.

2011-07-06
spacer Otras Sin catalogar - LUGO.

spacer
spacer spacer spacer spacer
ngel Garca Jerez

Consultor tecnolgico de desarrollo de proyectos informticos. Co-autor del libro "Actualizacin y mantenimiento del PC (Edicin de 2010) publicado por Anaya Multimedia

Ingeniero Tcnico en Informtica de Sistemas e Ingeniero en Informtica (premio al mejor expediente de su promocin)

Puedes encontrarme en Autentia: Ofrecemos servicios de soporte a desarrollo, factora y formacin

Somos expertos en Java/J2EE

Ver todos los tutoriales del autor

Fecha de publicación del tutorial: 2008-09-19

Tutorial visitado 25.473 veces Descargar en PDF

Archiva: Gestión de repositorios maven (I).

1. Introducción
2. Instalación
3. Configuración
3.1 Search -> Find.
3.2 Search -> Find Artifact.
3.3 Search -> Browse.
3.4 Manage -> Reports.
3.5 Manage -> User Management.
3.5.1 Roles de administración de Archiva
3.5.2 Roles de acceso a repositorio
3.6 Manage -> Appearance.
3.7 Manage -> Upload Artifact.
3.8 Administration -> Repository Groups.
3.9 Administration -> Repositories.
3.10 Administration -> Proxy Connectors.
3.11 Administration -> Legacy Support.
3.12 Administration -> Network proxies.
3.13 Administration -> Repository Scanning.
3.14 Administration -> Database.
4. RSS
5. Conclusión

1. Introducción

Archiva (maven.apache.org/archiva) pertenece al conjunto de proyectos desarrollados por el equipo de Jakarta Maven, como Continuum, SCM, Wagon, JXR, Doxia ... Básicamente es una herramienta de gestión de repositorios maven. Entre las funcionalidades que podemos destacar y que veremos más adelante en el tutorial, podemos citar: gestión de control de acceso a los repositorios definidos, cacheo de artefactos configurando proxys a repositorios remotos y gestión y mantenimiento de repositorios maven 1.x y 2.x (indexación, búsquedas, informes ...).

2. Instalación

El equipo de maven proporciona dos formas de instalar Archiva. Como una aplicación standalone o por medio de una aplicación web (WAR) desplegada en un servidor de aplicaciones Tomcat 5.5 o 6.0.x.

En este tutorial sólo veremos la primera, así que manos a la obra. Primero, descargamos de apache.rediris.es/archiva/binaries/apache-archiva-1.1.1-bin.tar.gz la aplicación. Segundo, configuramos el entorno para empezar su instalación siguiendo los siguientes pasos:

  • Creamos un usuario y grupo llamados maven.
    • su -c "groupadd maven"
    • su -c "useradd -g maven maven"
    • su -c "passwd maven"
  • Creamos un directorio donde situaremos la aplicación standalone. En nuestro caso /opt/maven/archiva, cuyo propietario sera el usuario maven y grupo maven.
    • su -c "mkdir /opt/maven"
    • chown -R maven:maven /opt/maven
    • su -c "su - maven"
    • cd /opt/maven
    • mkdir archiva
    • cd archiva
    • tar -xvf apache-archiva-1.1.1-bin.tar.gz
    • mkdir repositories
    • Crear un conjunto de scripts para el arranque y la parada de archiva.

Nota

Para que archiva arranque adecuadamente el entorno de usuario debe tener configurada una jdk igual o superior a 1.5. En nuestro caso configuraremos nuestro entorno con la jdk 1.6.0_03.

  • cd /opt/maven/apache-archiva-1.1.1/bin
  • Creamos un script de arranque llamado start.sh que contiene lo siguiente.
#! /bin/bash
JAVA_HOME=/opt/jdk1.6.0_03
ARCHIVA_HOME=/opt/maven/apache-archiva-1.1.1
LOG_ARCHIVA=$ARCHIVA_HOME/logs

export JAVA_HOME

if [ ! -d $LOG_ARCHIVA ]; then
mkdir $LOG_ARCHIVA
fi

if [ -f $ARCHIVA_HOME/bin/archiva ]; then
$ARCHIVA_HOME/bin/archiva start
else
exit 1
fi

Advertencia

Es posible que al ejecutar el comando de arranque, Archiva no se inicie. Esto puede ser debido a que el script "archiva" no reconozca nuestra arquitectura y por tanto no sepa cual es el script que debe lanzar. Para solucionar este problema basta con renombrar el fichero wrapper-arquitectura por wrapper.

  • Creamos un script de parada llamado stop.sh
#! /bin/bash

JAVA_HOME=/opt/jdk1.6.0_03
ARCHIVA_HOME=/opt/maven/apache-archiva-1.1.1

LOG_ARCHIVA=$ARCHIVA_HOME/logs

export JAVA_HOME

if [ ! -d $LOG_ARCHIVA ]; then
mkdir $LOG_ARCHIVA
fi


if [ -f $ARCHIVA_HOME/bin/archiva ]; then
$ARCHIVA_HOME/bin/archiva stop
else
exit 1
fi
  • Creamos un script de inicialización (/etc/init.d/archiva), que nos permitirá iniciar archiva cuando arranque el sistema.
#!/bin/sh
#
# chkconfig: 345 60 80
# description: Arranca y para el servidor Archiva.
#
# Source function library.
. /etc/rc.d/init.d/functions

ret=0

case $1 in
start)
gprintf "Starting Archiva: "
su -c "/opt/maven/apache-archiva-1.1.1/bin/start.sh" maven &
success "Archiva startup"
ret=$?
echo
;;

stop)
gprintf "Stopping Archiva: "
su -c "/opt/maven/apache-archiva-1.1.1/bin/stop.sh" maven
ret=$?
if [ $ret = 0 ]; then
success "Archiva shutdown"
else
failure "Archiva shutdown"
fi
echo
;;
restart)
$0 stop
sleep 5
$0 start
ret=$?
;;
*)
gprintf "Usage: %s\n" "$(basename $0) {start|stop|restart}"
exit 0
;;
esac

exit $ret
  • Ahora utilizamos el comando chkconfig (similar al comando update-rc.d en sistemas basados en debian) para que cree los enlaces necesarios en rcX.d para el arranque y la parada del servicio.
  • chkconfig --add archiva
  • Si todo ha ido bien, arrancamos archiva.
  • cd /etc/init.d/
  • ./archiva start
  • Y por último, accedemos a la aplicación localhost:8080/archiva

3. Configuración

La primera vez que accedemos a Archiva, nos pedirá los datos para crear el usuario administrador de la aplicación:

Figura 1. Creación de usuario administrador.

spacer

A continuación, deberemos logarnos en el sistema.

Figura 2. Accediendo a Archiva.

spacer

Lo primero que vemos en la parte de la derecha es el menú, dividido en tres grandes bloques:

  • Find: opciones para la búsqueda de artefactos subidos a los repositorios definidos en la aplicación.
  • Manage: opciones de administración de Archiva como gestión de usuarios, informes y personalización de la aplicación.
  • Administration: opciones de gestión/administración de los repositorios.

Figura 3. Menú de navegación.

spacer

3.1 Search -> Find

Esta opción permite realizar búsquedas sobre los repositorios definidos. El resultado mostrado serán artefactos que coincidan con el termino buscado o aquellos artefactos que dependan de él. En esta nueva versión podremos buscar artefactos que contengan una determinada clase, método o paquete, sólo tendremos que incluir en la consulta la palabra bytecode (ejemplo: bytecode:getString).

Figura 4. Búsqueda de artefactos.

spacer

3.2 Search -> Find Artifact

Esta opción es muy útil en situaciones donde tenemos artefactos anónimos, sin ninguna información que permita conocer a que versión, grupo, etc... pertenece. Con esta funcionalidad podremos localizar si el artefacto en concreto se encuentra subido en algunos de los repositorios gestionados por Archiva. Esto es posible gracias a que indexa todos los recursos, generando ficheros checksum que ayudan a identificar cada artefacto unívocamente en el repositorio.

Archiva utiliza un applet de Java para generar el checksum local del artefacto que posteriormente será utilizado para localizarlo en los repositorios. Para que funcione, debemos aceptar su ejecución la primera vez que accedamos a "Find Artifact".

Figura 5. Applet de generación de checksum.

spacer

Posteriormente adjuntamos el fichero que deseamos buscar en el repositorio y pulsamos sobre "Search". Si el artefacto se encuentra en alguno de los repositorios, Archiva nos redirigirá a él. En caso contrario nos mostrará un mensaje indicándonos que el artefacto no se ha encontrado.

Figura 6. Búsqueda de artefactos.

spacer

3.3 Find -> Browse

La última opción dentro del bloque "Find" es "Browse". Con esta opción podremos navegar por todos los grupos y artefactos almacenados en los repositorios.

Figura 7. Navegación por artefactos.

spacer

Al acceder al detalle de cualquier artefacto, Archiva, muestra cinco pestañas con información relativa a él: Info, Dependencies, Dependency Tree, Used by y Mailing Lists. En todas ellas, en la parte derecha, tenemos la posibilidad de descargar los recursos que se hayan subido del artefacto (source, artefact, pom.xml, etc...).

En la pestaña info, se muestra información genérica como: grupo, artefacto, versión, tipo de empaquetado y el contenido del fichero pom.xml.

Figura 8. Pestaña Info.

spacer

En la pestaña Dependencies se muestra la lista de artefactos de los que depende.

Figura 9. Pestaña Dependencies.

spacer

En la pestaña Dependency Tree se muestra la misma información que en la anterior, pero presentando la jerarquía en forma de árbol.

Figura 10. Pestaña Dependency Tree.

spacer

En la pestaña "Used By" se muestra la lista artefactos subidos al repositorio que dependen de esta versión.

Figura 11. Pestaña Used By.

spacer

Y por último la pestaña "Mailing Lists" donde podemos ver la lista de correos de los desarrolladores si estuvieran definidos en el fichero pom.xml.

Figura 12. Pestaña Mailing lists.

spacer

3.4 Manage -> Reports

Archiva permite generar informes sobre problemas en los artefactos almacenados en los repositorios. Los informes que podemos generar son muy limitados, únicamente nos permite filtrar por grupo y repositorio y definir el número de errores por pagina. Otro punto débil es la imposibilidad de generar informes en otro formato que no sea html.

Figura 13. Informes.

spacer

3.5 Manage -> User Management

Archiva gestiona el acceso a las diferentes funcionalidades y repositorios con roles, distiguiendo dos tipos: roles de administración de Archiva y roles de acceso a repositorios.

3.5.1 Roles de administración de Archiva

Nos encontramos dos roles que podemos asignar al usuario.

  • Administrador de usuarios: capaz de crear, editar y asignar permisos a otros usuarios de la aplicación.
  • Administrador de la aplicación: se puede ver como el usuario "root" en un sistema linux. Tiene completo control sobre todas las funcionalidades que archiva nos proporciona.

3.5.2 Roles de acceso a repositorios

Tenemos cuatro roles, dos de ellos que si se activan se aplican sobre todos los repositorios y otros dos que son especificos a cada repositorio.

  • Global Repository Observer: con este rol el usuario puede acceder en modo lectura a todos los repositorios y utilizar las opciones Browse y Find.
  • Global Repository Manager: el usuario puede acceder en modo lectura/escritura y administrar todos los repositorios definidos.
  • Repository Observer: mismo comportamiento del rol "Global Repository Observer", pero aplicable exclusivamente a los repositorios seleccionados por el administrador.
  • Repository Manager: mismo comportamiento del rol "Global Repository Manager" pero aplicable exclusivamente a los repositorios selecionados por el administrador.

Figura 14. Gestión de usuarios.

spacer

3.6 Manage -> Appearance

Con esta opción se permite al administrador realizar una mínima personalización de la aplicación. Podemos incluir en la parte superior derecha una imagen de la organización.

Figura 15. Personalización de aplicación.

spacer

3.7 Manage -> Upload Artifact

Esta opción realiza la misma acción que si utilizaramos el goal "deploy:deploy-file" para subir al repositorio un artefacto.

Figura 16. Subida de artefactos.

spacer

3.8 Administration -> Repository Groups

Con esta nueva versión se incorpora un nuevo concepto llamado "Repositorio Virtual", que nos permitirá reunir varios repositorios definidos en la opción "Repositories", corportandose como uno único.

Figura 17. Grupo de Repositorios.

spacer

3.9 Administration -> Repositories

Con Archiva podemos configurar dos tipos de repositorios: los gestionados por el propio Archiva y los remotos. Los repositorios gestionados son locales, situados en la misma máquina donde tengamos instalado Archiva, pudiendo ser utilizados como repositorios de despligue de artefactos internos a la organización, o como almacén de artefactos de repositorios de terceros utilizando "Proxy Conectors".

Los repositorios remotos, en cambio, son aquellos donde se almacenan artefactos de terceros no gestionados por nuestro servidor y que están situados remotamente. Los Proxies Conectors nos permiten tener en nuestras instalaciones un mirror bajo demanda de repositorios remotos, es decir, almacenamos en nuestro repositorio local todos los artefactos que sean pedidos a los repositorios remotos. Básicamente un Proxy Conector es un enlace entre un repositorio gestionado y un repositorio remoto. Indicar que Ar

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.