Hemos estado investigando repositorios de artefactos en los últimos meses, los cuales deberían resolver un par de problemas que teníamos o esperábamos tener.
– Experimentamos fallos en las compilaciones debido a la limitación con Docker hub
– Nos gustaría tener un mejor control de los paquetes utilizados, especialmente en el área de NPM, donde todo parece ser un poco "inconsistente"
– También estamos considerando la posibilidad de crear paquetes deb y rpm para una distribución y actualización más fáciles.
– También nos gustaría tener una forma de restringir el acceso a algunos paquetes.
Según nuestra investigación, parece que actualmente hay dos opciones:
– JFrog Artifactory
– Sonatype Nexus
Ambos tienen versiones OSS, las cuales ofrecen funcionalidad reducida de forma gratuita.
La versión OSS de Artifactory lamentablemente no ofrece npm, dep, rpm, docker, la versión OSS de Nexus sí lo hace, por lo que Nexus fue nuestra primera opción. Lo instalamos y evaluamos la versión OSS, sin embargo, tuvimos que darnos cuenta de que algunas cosas simples simplemente no existen. Por ejemplo, es imposible cargar cualquier archivo manualmente, una función tan esencial que todavía no entiendo cómo no pueden ofrecerlo.
Me sorprendió cuando descubrí que Nexus estaba ofreciendo una versión profesional gratuita para proyectos de código abierto:
¿Estás desarrollando un proyecto de código abierto? Si es así, la mayoría de los proyectos de código abierto califican para una licencia gratuita de Nexus Professional. Los proyectos de código abierto pueden calificar para una licencia profesional gratuita, o pueden aprovechar la hospedería gratuita de Nexus Professional en http://oss.sonatype.org. Sonatype está muy comprometido con el desarrollo de código abierto de calidad y esta es nuestra manera de retribuir a la comunidad.
(Fuente: blog.sonatype.com/2010/01/nexus-open-source-or-professional-which-one-is-right-for-you/)
Así que contacté al soporte de Nexus para verificar si eso era posible para Psono. Recibí una llamada de regreso un día después en la que una amable señora intentó venderme Nexus Pro. Aún hoy no entiendo su argumentación, pero según ella, la licencia de "Nexus Professional" no es una licencia de "Nexus Pro" y según ella, la licencia de "Nexus Professional" es solo la versión normal de "Nexus OSS".
Dejé esta conversación un poco confundido. 🙂
Luego me comuniqué con jfrog, donde me dirigieron a https://jfrog.com/community/open-source/
Así que JFrog y Google se han asociado para apoyar proyectos de código abierto con una versión Pro gratuita.
¡Genial! Exactamente lo que quería. Me registré (inicialmente como una demostración de 30 días, que una vez aprobada se convierte en una instalación permanente) y jugué un poco con ella.
Artifactory está lleno de funciones, el botón "Set me up" facilita mucho el inicio con nuevos repos. ¡Funciona a la perfección!
Hoy recibí la noticia de JFrog:
Acabamos de aprobar tu solicitud, y tu servidor ahora está operando de forma permanente. Gracias por la presentación, es nuestro privilegio apoyar el OSS.
Gracias por la presentación, es nuestro privilegio apoyar el OSS.
¡Gracias JFrog por su apoyo!
Estamos felices de anunciar que Psono ahora está...
Actualización 1 de febrero de 2018
Acabamos de recibir un comentario de Brian Fox:
Hola, lamento la confusión sobre las licencias gratuitas para proyectos de código abierto. Tenemos una larga historia de apoyo al código abierto y definitivamente es una versión profesional completa la que se otorga a las forjas/proyectos que califican.
—Brian Fox CTO, Sonatype