2012-07-25 12 views
9

Actualmente, tenemos un repositorio de nexus hosted de forma remota (en una ubicación geográfica diferente). Tenemos un repositorio de proxy local localmente en el repositorio alojado.Auto reflejo Nexus Proxy Repository

Cada vez que hay nuevas versiones de algunos archivos agregados al repositorio alojado remotamente, la primera solicitud del archivo recién agregado del sistema de compilación es descargarlo a local-proxy-repository.

El problema que tengo ahora es que algunos de los archivos que se agregan son realmente enormes (digamos alrededor de 400 MB). Por lo tanto, la primera construcción consume mucho tiempo para terminar.

¿Hay alguna forma de que podamos sondear el repositorio alojado remotamente y duplicarlo automáticamente?

+0

Para el votante - Lo que terminé haciendo es ejecutar un trabajo jenkins que envía la solicitud de descarga para cualquier nueva dependencia de distancia antes de comenzar mi trabajo :) – Chris

Respuesta

5

Nexus Professional 2. + admite esto como una característica experimental del conjunto de funciones Smart Proxy. Es una función experimental que está desactivada por defecto, pero debería funcionar bien. ¡Darle una oportunidad!

Para activarlo vaya a "administración/capacidades". Marque "mostrar avanzado" y luego seleccione "proxy inteligente: suscribirse" y habilite la búsqueda preventiva.

Actualización: a partir de Nexus 2.3 esto ya no se considera experimental y puede configurarlo para cada repositorio que utilice como proxy.

+0

Gracias por la respuesta. Estoy usando 2.0.4-1 Nexus, pero no pude encontrar la opción que especificó. Pero esto es lo que hice: Agregué una tarea programada de "Sincronizar repositorio de sombras" y lo programé a diario. ¿Esto lograría qué yo qué? – Chris

+1

Como dije ... SmartProxy es una función Nexus Professional. Si usa código abierto, no estará allí. Y Synchronize Shadow Repository es para sincronizar entre un repositorio virtual y uno real en el mismo servidor repo ... por lo que es algo completamente diferente. –

0

que no puedo comentar sobre la respuesta de Manfred, asi que aquí hay una nueva variante:

Si está ejecutando Nexus Profesional, puede utilizar Proxy inteligente para sincronizar los repositorios.

Primero tiene que realizar la configuración general como se describe en http://www.sonatype.com/books/nexus-book/reference/smartproxy.html (establecer confianza, configurar el repositorio de publicación alojado, configurar el repositorio de recepción de proxy). Solo entonces se crea la capacidad y se aplica la respuesta de Manfreds:

Dirígete a "Administración/Capacidades", marca "Mostrar opciones avanzadas" y selecciona "Suscribir" para tu repositorio proxy. Allí puede activar la captura preventiva , que descargará automáticamente nuevos artefactos en su repositorio alojado en el proxy.

+0

Esta es la misma respuesta que ya proporcioné ... –

+0

con algunos detalles adicionales sobre la configuración de publicación/recepción en los repositorios. Sin eso, la capacidad no se crea. – nabcos