Probando Artifactory Open Source – Parte IV – Uso

Para finalizar el análisis de Artifactory veremos cómo añadir artefactos manualmente al repositorio y cómo utilizar nuestro repositorio de Artifactory en nuestros proyectos.

Despliegue manual de artefactos

Para desplegar manualmente nuestros artefactos iremos a la pestaña Deploy y subiremos nuestro artefacto compilado.

10-artifactory-deploy-artifacts

 

Posteriormente configuraremos la información detallada del artefacto y pinchamos en Deploy Artifact.

11-artifactory-deploy-2

 

Con esto ya tendremos nuestro artefacto disponible en el repositorio.

Configurar el repositorio para nuestros proyectos

Para que nuestros proyectos hagan uso del repositorio de Artifactory tenemos dos opciones:

  • Configurar el settings.xml de nuestra instalación de maven.
  • Configurar el pom.xml de nuestro proyecto maven.

En ambos casos bastará con sustituir, o añadir en caso de que no existan, la definición de los repositorios por lo siguiente:

<repositories>
    <repository>
        <id>central</id>
        <url> http://[host]:[port]/artifactory/libs-release </url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>snapshots</id>
        <url> http://[host]:[port]/artifactory/libs-snapshot </url>
        <releases>
            <enabled>false</enabled>
        </releases>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>central</id>
        <url> http://[host]:[port]/artifactory/plugins-release </url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </pluginRepository>
    <pluginRepository>
        <id>snapshots</id>
        <url> http://[host]:[port]/artifactory/plugins-snapshot </url>
        <releases>
            <enabled>false</enabled>
        </releases>
    </pluginRepository>
</pluginRepositories>

Probando Artifactory Open Source – Parte III – Configuración

Continuando con el análisis de Artifactory, en esta entrada veremos algunas de las opciones de configuración.

Acceso

Para comenzar accederemos a Artifactory en la URL http://servidor:8081/artifactory y usando el par usuario/contraseña admin/password.

01-artifactory-login

 

Configuración general

Entrando en la pestaña Admin, podremos acceder a la configuración general.

general.configuration.14.10.10

Desde esta pantalla podemos configurar lo siguiente:

  • El nombre del servidor.
  • URL base personalizada.
  • El tamaño máximo permitido para los archivos subidos a través de la interfaz web.
  • El formato de fecha para mostrar fechas en la interfaz web.
  • Indicador de que Artifactory se encuentra fuera de línea (Sin conexión a internet).
  • Logo y slogan.
  • Mostrar información y ayuda como menús contextuales.

Configurar repositorios

Debajo de la configuración general encontraremos la configuración de repositorios.

02-artifactory-repositories

Como podemos observar, ya hay cargados una serie de repositorios por defecto agrupados en las siguientes categorías:

  • Repositorios locales: Repositorios físicos, gestionados localmente, donde podemos desplegar artefactos.
  • Repositorios remotos: Repositorios remotos para los que Artitactory actuará como proxy y caché.
  • Repositorios virtuales: Agrupan varios repositorios físicos bajo la misma URL.

Para eliminar, añadir o modificar los repositorios simplemente haremos uso de los menús existentes.

 

Administración de seguridad

Artifactory nos provee, entre otras, las siguientes opciones:

  • Gestión de usuarios
  • Gestión de grupos
  • Administrar permisos
  • Administración de seguridad con LDAP

 

Para obtener mas información puede acceder a la Wiki del proyecto Artifactory

 

Probando Artifactory Open Source – Parte II – Instalación

En la entrada anterior vimos las ventajas de utilizar Artifactory como repositorio para nuestros proyectos maven.

Hoy explicaré cómo instalar de diferentes modos esta herramienta.

Artifactory puede ser instalado y ejecutado de diferentes modos:

  • Como servicio de Windows o Linux.
  • Ejecución manual.
  • Usando la distribución RPM.
  • En otros servidores de aplicaciones desplegado como aplicación WAR estándar. (Se recomienda Tomcat 6 o 7)

Como requisito previo debemos tener debidamente instalado Java JDK 1.6 o superior y la variable de entorno JAVA_HOME configurada.

Instalación como servicio

En Windows

Ejecutar

%ARTIFACTORY_HOME%\bin\InstallService.bat

donde %ARTIFACTORY_HOME% es la ruta donde hemos descomprimido Artifactory.

En Linux

Ejecutar

$ARTIFACTORY_HOME/bin/install.sh

para instalar y posteriormente

service artifactory start

para arrancar el servicio.

Ejecución Manual

En Windows

Ejecutar

%ARTIFACTORY_HOME%\bin\artifactory.bat

En Linux

Ejecutar

$ARTIFACTORY_HOME/bin/artifactory.sh artifactoryctl start

Instalación de paquete RPM

Para la instalación del paquete RPM debemos ejecutar como usuario root el siguiente comando:

rpm -ivh artifactory-rpm-<version>.rpm

Acceder a Artifactory

Una vez se finalice la instalación y/o el arranque, la interfaz Web será accesible desde http://servidor:8081/artifactory y por defecto accederemos a ella usando el par usuario/contraseña admin/password.

 

Para obtener mas información puede acceder a la Wiki del proyecto Artifactory

 

En el siguiente artículo veremos la configuración básica de Artifactory

 

Probando Artifactory Open Source

El problema

En uno de los proyectos con los que me encuentro actualmente se está empezando a convertir en un infierno la carga de las dependencias de maven cada vez que es necesario hacer un update de las mismas o simplemente se incluye a nuevo integrante en el proyecto y comienza a montar el proyecto en su equipo para comenzar con el desarrollo.

Los mayores problemas con los que nos encontramos son los siguientes:

  • Extremada lentitud en la descarga desde los repositorios de maven debido a la gran cantidad de dependencias del proyecto.
  • Necesidad de importar proyectos internos adicionales al que estamos trabajando y compilar los mismos para que queden añadidos al repositorio local.
  • Se requiere la instalación manual en el repositorio local de dependencias no existentes en repositorios (por ejemplo el JDBC de Microsoft SQL Server).
  • Desaparición de librerías de terceros en los repositorios de maven.

 ¿Por qué Artifactory?

artyfactory

Artifactory es un Repositorio de maven en el que se almacenan las dependencias de nuestros proyectos. Algunas de sus principales características son:

  • Actúa como proxy entre los repositorios de maven y los locales.
  • Mantiene en caché las dependencias descargadas, ahorrando tiempo de descarga en veces posteriores y evitando perder las dependencias que en un momento u otro fueron parte del proyecto.
  • Permite controlar qué repositorios se utilizan, qué artefactos descargar, cuáles bloquear, cómo se despliegan, quién los despliega y muchas opciones mas.
  • A través de un wizard es posible el despliegue manual de artefactos dentro del repositorio, con lo que podemos dejar dentro de nuestro repositorio tanto nuestras librerías como las de terceros que no se encuentran en los repositorios de maven.
  • Con su instalación por defecto, puede estar funcionando en tan sólo unos minutos.
  • Es de fácil configuración.

En resumen, observando sus características, no es muy difícil entender que nos solventa los problemas mas comunes cuando trabajamos con proyectos maven además de simplificarnos mucho el trabajo.

 

En siguientes entradas veremos las diferentes opciones de instalación, configuración y uso de Artifactory.