Pregunta ¿Simple web-frontend para la administración svn remota? [cerrado]


Ejecutamos un repositorio SVN. Algunos de nuestros usuarios más avanzados necesitan poder realizar alguna administración de SVN sin depender del administrador del sistema.

Deben poder hacer cosas como crear repositorios SVN, eliminar repositorios SVN, y ejecutar comandos como 'svnadmin dump' y 'svnadmin load'.

Nos gustaría evitar el acceso SSH en estas máquinas FreeBSD, y preferiríamos proporcionar una interfaz de servicio a través de una interfaz de usuario web.

Estoy buscando un script simple (o una pequeña cantidad de scripts) que use Perl o PHP. encontré svnadmin (De Jochen Hoenicke) o svnadmin.pl (De doug munsinger), pero esperaba encontrar algo con una comunidad de usuarios más grande o que haya sido recomendado por otros.

Parece que Trac Permite la administración de SVN, pero viene con muchas más características de las que necesitamos.


8
2018-06-04 22:45


origen


De su redacción parece que ha rechazado svnadmin simplemente porque no cree que tenga una base de usuarios lo suficientemente grande. ¿Estoy leyendo eso correctamente? Más importante aún, ¿se ajusta a sus necesidades o no? Cuantos otros lo usen no debería ser un factor. - John Gardeniers
@John Gardeniers: No rechazamos svnadmin o svnadmin.pl. Sin embargo, si pudiera elegir entre un proyecto con un autor y un proyecto con una comunidad, generalmente elegiré este último, siempre que ambos proyectos se ajusten a mis necesidades. Tiendo a confiar más en un script respaldado por la comunidad, porque a menudo una comunidad podrá presentar optimizaciones mejoradas, soluciones de seguridad, responder a preguntas, etc. Dicho esto, es probable que vayamos con svnadmin, debido a su naturaleza simple y es un código legible. No es que haya nada malo con svnadmin.pl. - Stefan Lasiewski
También encontré una lista (de 2008) de otros posibles proyectos en Collabnet: "¿La mejor interfaz de administración basada en web para Subversion?" - Stefan Lasiewski


Respuestas:


Respuesta tardía, ya que soy nuevo en serverfault: nosotros (departamento de compsci de la universidad) desarrollamos nuestra propia interfaz web svn de autoservicio y la pusimos a disposición como fuente abierta. Nombrado Repocafe, disponible en http://repocafe.cs.uu.nl/. Modelado a nuestras propias necesidades, puede tratar con servidores ldap únicos o múltiples y usuarios invitados. Tal vez un poco excesivo para 'simple'.


1
2017-10-22 11:10



Gracias por eso. Somos una institución gubernamental de investigación y trabajamos con personal de muchas universidades. A veces trabajamos con múltiples servidores LDAP, etc. - Stefan Lasiewski


Al final, elegimos ir con svnadmin (De Jochen Hoenicke).

Esto se ganó porque era un archivo simple y simple con 400 líneas de código, y es algo que podríamos arreglar si es necesario. Desafortunadamente no tiene una comunidad de usuarios o muchas recomendaciones. Pero su simplicidad gana. Pregúntame en 6 meses si lo recomendamos;)


5
2018-06-08 21:19





Trac y Redmine son las únicas dos que conozco que hacen esto bien; pero ambos están más orientados a la gestión de proyectos que a la simple administración de repositorios.


1
2018-06-05 04:25



Gracias chris Hay algunos otros proyectos que están en la escala de Trac y Redmine, pero sería difícil extraer solo la funcionalidad limitada que queremos. - Stefan Lasiewski


Hay un módulo de Usermin para Subversion, pero no estoy seguro de que te permita hacer lo que necesitas.


1
2018-06-06 10:44



No utilizamos Webmin o Usermin, pero gracias. Para el registro, parece que el siguiente módulo podría hacer esto: el módulo 'Virtualmin SubVersion Repositories 4.0' bajo webmin.com/cgi-bin/search_third.cgi?cat=Virtualmin - Stefan Lasiewski


Hay "User friendly svn" USVN. Creo que encontrará que la mayor parte del esfuerzo de la comunidad para algo como esto es pequeño: SVN se mantiene de manera efectiva, pero las herramientas de administración son una parte que no lo hace. Tienden a escribirse una vez y funcionan para siempre, por lo que estas herramientas de GUI tampoco necesitan cambiar. Entonces, no te preocupes demasiado por el tamaño de la comunidad en este caso.


1
2018-06-07 17:28





Responderé a mi propia pregunta, para la posteridad.

Tambien encontre USVN, que es una herramienta de administración SVN basada en PHP. Ha pasado por varias iteraciones, tiene una comunidad de usuarios y un sitio web brillante y lleno de características,

Sin embargo, el proyecto de la USVN parece un poco obsoleto. USVN fue un proyecto realizado por estudiantes en una universidad, y ahora los administradores tienen graduado y siguió buscando trabajo, y puede que ya no tenga tiempo de contribuir al proyecto. No ha habido una actualización en 9 meses, el localizador de bichos no parece activo, y los foros están llenos de spam y se ven un poco sin mantenimiento, así que tal vez la comunidad sea menos activa entonces primero aparece. Esto no es del todo malo y espero que a esta gente le vaya bien, pero estaría preocupado por engancharme a un proyecto obsoleto.

El proyecto utiliza 200 archivos (sin contar los 2000 archivos de Zend), que pueden ser difíciles de auditar y mantener, y pueden ser más complejos de lo que estamos buscando. Además, este proyecto se basa en Zend, que es sufriendo de problemas políticos en FreeBSD.


1
2018-06-07 18:26





Otra sugerencia de la lista de correo svn dev de diciembre de 2009, ¡es bastante reciente!

Por favor, echa un vistazo a mi nuevo código abierto   Herramienta para gestionar permisos SVN!

Gestión de derechos SVN para múltiples repos.   reflejado en múltiples ubicaciones puede ser   Una tarea desalentadora. svnDashboard proporciona   Un simple, basado en web, habilitado para AJAX   interfaz gráfica de usuario para la gestión   Varios repositorios y usuarios en   una vez.

http://sourceforge.net/projects/svndashboard/

Nuevo v1.1.3.140 - Ahora incluye una base de datos   script de configuración! Algunos de ustedes se quejaron   que esto faltaba, y con razón   ¡asi que! Ahora se incluye, junto con una   breve archivo readme.

Próximamente en la versión 2: • Mejorado   Funcionalidad UI • Soporte para   múltiples ubicaciones reflejadas   • Estadísticas del repositorio • Error   mensajes • Buscar • y más!


1
2018-06-14 08:54



Parece interesante. ¡Gracias! - Stefan Lasiewski
No hay actualizaciones desde 2009. - reinierpost


Hemos implementado esto con nuestra nueva distribución svn hace un año. Ha funcionado muy bien.

Contamos con múltiples equipos de desarrollo y sus propios proyectos. Entonces, trajimos toda la información a LDAP y otorgamos a los gerentes de equipo acceso de escritura al árbol de información de directorio (DIT) para subversión:

ou = groups, ou = subversion, ou = apps, dc = example, dc = com ou = repositorios, ou = subversion, ou = apps, dc = example, dc = com

La unidad organizativa de 'grupos' anterior es grupos personalizados para repositorios / proyectos de subversión. Además, usamos 'viewvc' con https para ver los repositorios en svn.

El servidor apache usa el archivo ACL creado en base al DIT de LDAP (proporcionado anteriormente) para dar acceso de lectura y escritura a diferentes usuarios y grupos. Hay un cron que lee el DIT de LDAP cada cinco minutos y creó el archivo ACL. Por lo tanto, si hay nuevos repositorios agregados con solo lectura y usuarios / grupo de lectura-escritura. El cron leerá eso y creará los repositorios, e incorporará esa información en el archivo ACL para el repositorio recién creado. Es bastante limpio. Necesita crear un esquema LDAP basado en su requerimiento, obviamente. Tenemos toda la información de usuarios / hosts en LDAP, así que no fue un gran problema extenderla para incluir información svn.

-F


1
2018-06-16 22:15



Resulta que ya tenemos una gran instalación de LDAP aquí. Idea interesante. ¿Tengo razón al entender que tiene un repositorio SVN por 'ou = repositories, ou = subversion, ou = apps, dc = example, dc = com'? - Stefan Lasiewski
Solo almacena el nombre del repositorio o proyecto en LDAP. Por ejemplo, tengo un nuevo repositorio llamado 'myWebRepo', en LDAP que se muestra como: cn = myWebRepo, ou = repositorios, ou = subversion, dc-example, dc = com El CRON en realidad ejecuta un script ruby ​​(podría haber escrito en Perl o incluso Bash). Lo escribí en Ruby por diversión en realidad. El script ruby ​​sabe que todos los repositorios existen en 'ou = repositories, dc ....'. Reúne todos los nombres del repositorio y los atributos, es decir, usuarios de solo lectura, etc. El ruby ​​verifica si el repositorio ya existe. Si no lo hace, lo que significa que es una nueva repetición. Lo crea y actualiza el archivo ACL. - Nikolas Sakic


Parece que las cosas han cambiado con el tiempo. Aquí hay otro script que creo que parece ser una buena opción para la administración de svn: http://www.svn-access-manager.org/


0
2017-08-15 10:24