tools repository artifacts

tools - Recomendar Build Artifact Repository Manager



artifact repository nexus (2)

Con SVN + Apache (mod_dav_svn.so, mod_authz_svn.so) parece que obtengo:

  • Acceso anónimo de solo lectura a través del protocolo HTTP con una amplia gama de clientes compatibles para descargar (wget / curl de GNU Make, tarea para Apache Ant).
  • Acceso de escritura fácil de mantener para usuarios / grupos (sintaxis fácil):

    [repo:/path] user = rw

    A través de la utilidad del cadáver.

  • Integración con LDAP.

  • Historia de los estrenos (cuándo, qué y quién).
  • Operación atómica (evita los lanzamientos simultáneos y la reversión de errores).

Actualmente utilizamos FTP para mantener la distribución de artefactos de compilación y productos de terceros (solo para uso interno).

Los artefactos son documentos (HTML / pdf / chm / ...), libs (.dll / .so / .a / .jar / ...), programas (.exe / .jar / ...) y cualquier otra cosa. No están restringidos a Java / .NET y pueden provenir de diferentes culturas (firmware, controlador, móvil / estación de trabajo, GUI, Win / Linux / Mac / Solaris / AIX, etc.).

Para orginizar la jerarquía usamos tales caminos:

ftp://3pp/VENDOR/PRODUCT/VERSION/... ftp://3pp/opensource/PACKAGE-x.x.x.tar.bz2 ftp://dist/PRODUCT/VERSION/...

Para mantener la descripción de los artefactos usamos archivos de prueba sin formato README y CAMBIOS (reStructuredText).

¿Qué falta en este esquema?

  • Falta de permisos (cualquiera puede dañar el almacenamiento).
  • Falta el seguimiento de dependencias (por lo que cada archivo de compilación debe actualizarse si se modifica la dependencia de la versión).
  • Falta la actividad de recuperación (algunos archivos ya no son necesarios, pero no sabemos cuál).

No estoy buscando profundamente las soluciones existentes. Algunos gestores de paquetes como rpm / dpkg, escucharon sobre el repositorio de Maven, etc ...

Por favor, recomiende Build Artifact Repository Managers También es bueno escuchar inconvenientes y restricciones.

ACTUALIZAR


Estás creando un repositorio de artefactos de software personalizado. Hay tres proyectos de código abierto que ya hacen esto:

Artifactory y Nexus también tienen versiones de pago.

Puede almacenar cualquier tipo de archivo en estos repositorios, y no necesita utilizar Maven. Puedes desplegar manualmente artefactos en ellos. Puede configurar el control de acceso de grano fino. Se integran bien con herramientas de construcción automatizadas.

¡Creo que usar una de estas herramientas te ahorraría mucho esfuerzo!

https://binary-repositories-comparison.github.io/ está la matriz de comparación bastante imparcial (impulsada por la comunidad) entre los tres.