Lanzamiento de la plataforma de desarrollo colaborativo Kallithea 0.5

Presentado por lanzamiento de un sistema de gestión de repositorios Calitea 0.5, establecido entusiastas y representantes de Software Freedom Conservancy para continuar el desarrollo de la base de código libre RhodeCode, después transformaciones esta plataforma en un producto comercial semi-propietario. Kallithea le permite implementar una infraestructura de gestión de desarrollo que admite sistemas de control de versiones Git y Mercurial, y es similar en tareas a GitHub, GitLab y Bitbucket. El código del proyecto está escrito en Python y distribuido por licenciado bajo GPLv3.

Kallithea incluye un servidor de alto rendimiento para procesar solicitudes push/pull y una interfaz web para organizar el desarrollo colaborativo, que le permite administrar repositorios, compartir derechos de acceso, revisar código, rastrear la actividad de otros participantes, bifurcar proyectos, enviar solicitudes pull o cambiar código a lugar, a través de un sencillo editor. Se admite la integración con una base de datos de usuarios empresariales centralizada basada en LDAP o ActiveDirectory. Se admite la creación de grupos de repositorio y grupos de desarrolladores con gestión unificada de los miembros del grupo. La apariencia de la interfaz se puede cambiar fácilmente mediante el sistema de plantillas. Se admite una representación visual de la actividad en forma de gráficos. El sistema de revisión de cambios admite la discusión de cambios y el envío de notificaciones.

La parte del servidor de la plataforma es multiproceso, lo que le permite atender simultáneamente varias solicitudes pull/push. Para aumentar el rendimiento, el sistema utiliza activamente el almacenamiento en caché y realiza acciones en modo asíncrono. El sistema tiene herramientas de respaldo integradas que le permiten archivar y guardar periódicamente una copia de todos los datos a través de "scp". Para rastrear la actividad en los repositorios, se admite una capa especial que mantiene un registro de todas las solicitudes y permite autenticar cada solicitud. Se utiliza una biblioteca para trabajar con repositorios. vcs, los metadatos del proyecto se pueden almacenar en SQLite, PostgreSQL u otras bases de datos compatibles con SQLAlchemy.

Cambios importantes:

  • Es posible acceder al repositorio usando SSH usando una URL como “ssh://[email protected]/nombre/del/repositorio". La autenticación al acceder a un repositorio a través de SSH se basa en la clave pública del usuario (con o sin protección adicional con contraseña de la clave, según la preferencia del usuario). La carga de la clave (~/.ssh/id_rsa.pub) al servidor se realiza a través de la interfaz web de Kallithea, que automatiza el guardado de la clave en el archivo autorizado_keys. Cabe señalar que el rendimiento al trabajar con el repositorio a través de SSH es mayor que cuando se accede al repositorio a través de HTTPS.
  • Se agregó soporte para el sistema de control de versiones distribuido Mercurial 5.2.
  • Se ha rediseñado la función "Admin > Configuración > Visual > (HTTP) Clonar URL", cuyo controlador ahora comprueba explícitamente la presencia de las cadenas "{repo}" y "_{repoid}".
  • El sistema de derechos de acceso se ha limpiado: los derechos de acceso siempre se consideran adicionales, es decir, se garantiza que cualquier usuario tendrá al menos los mismos derechos que el usuario predeterminado.
  • Se eliminó la compatibilidad con la configuración api_access_controllers_whitelist del archivo de configuración. La autenticación mediante una clave de acceso API ahora otorga automáticamente acceso a todas las API permitidas al usuario.
  • Se ha descontinuado el soporte para Python 2.6. Actualmente solo se admite la rama Python 2.7, pero los desarrolladores están trabajando para brindar soporte completo para Python 3.x.
  • Se ha eliminado la función de bloqueo del repositorio (tirar para bloquear, presionar para desbloquear).

Fuente: opennet.ru

Añadir un comentario