El Panel de Control de ¿Sidelab Forge? ¿Sidelab Code?

El laboratorio sidelab está formado por entusiastas de la programación. Entre unas cosas y otras siempre acabamos con Eclipse abierto y con el Ctrl+Espacio cargado. Dedicamos una buena parte de nuestro tiempo de trabajo y de nuestro tiempo libre al desarrollo. Estamos continuamente ideando, diseñando e implementamos todo tipo de códigos como algoritmos, herramientas interactivas, librerías, plugins para entornos de desarrollo, prácticas, páginas web… incluso documentos LaTeX. Cada día intentamos mejorar aprendiendo nuevas técnicas de desarrollo, tecnologías, herramientas, librerías, lenguajes de programación… todo lo que cae en nuestras manos relacionado con el desarrollo. Los proyectos desarrollados en el laboratorio tienen objetivos muy diferentes: proyectos de fin de carrera, investigación, colaboración con empresas, prácticas, ejercicios.

Al principio nos bastaba con el repositorio de código SVN, la verdad es no recuerdo qué hacíamos cuando no teníamos el Subversion. Instalamos XWiki para las asignaturas, proyectos, páginas personales. Luego utilicé Trac cuando colaboré con la empresa Solaiemes y me gustó mucho. Instalamos Bugzilla a ver qué tal funcionaba. Al final XWiki nos dió tantos problemas que decidimos tener un sofware especializado para cada tarea:

  • Drupal para las webs personales o páginas de herramientas
  • Moodle para la gestión de asignaturas
  • Forja con SVN + Git + Redmine + LDAP + Apache + SFTP…

En ese momento comenzó “la lucha”. Drupal ha sido complicado de domar. Tres proyectos fin de carrera después y más de una tarde puedo decir que todavía no lo tenemos controlado del todo. También hay que decir que los requisitos no son nada convencionales. Pero poco a poco www.sidelab.es va cogiendo forma y lo vamos dejando a nuestro gusto. Incluso estamos migrando la página del grupo de investigación Optsicom a Drupal. A ver si sacamos un poco de tiempo para hacer la migración.

Moodle ha dado pocos problemas. Según comentó Raul Cabido todo fue bastante directo. De momento aguanta bien un master y varias asignaturas. A ver si para el año que viene podemos pulir algunas cosas como la subida de ficheros.

La forja ha sido lo más complicado de todo. Menos mal que Patxi cogió el toro por los cuernos y se puso con ello. Desde el momento en que pusimos nuestro primer servidor de Subversion ya habíamos soñado con una aplicación de administración. Nunca nos ha gustado editar ficheros con vi para realizar tareas de administración (cuestión de manías). Después de dos proyectos de fin de carrera más tarde ya teníamos SVNAdmin, un plugin de Eclipse para la administración del repositorio. Con la llegada de Bugzilla,el declive de XWiki, mi experiencia con Trac y después de usar SourceForge había que repensar el concepto de “forja”. Tuvimos muchos problemas de diversa índole con SourceForge. También queríamos tener una forja en la que poder desarrollar proyectos que no queríamos hacer públicos.

Después de evaluar alternativas y de casualidad decidimos instalar RedMine. Y ya que estábamos, Patxi quiso hacerlo bien con LDAP. Y ya puestos, una carpeta pública y otra privada por proyecto accesible por http, https y sftp. Incluso Patxi hizo sus pinitos con git y con Hudson (ahora Jenkins). La verdad es que todo funciona de maravilla. Siempre quedan cosas por hacer, pero hemos avanzado varios órdenes de magnitud con esta forja. No tiene tantas cosas como otras forjas pero a nosotros nos sirve. He encontrado una página que compara forjas públicas y software para montarte tu propia forja. Una lectura obligada para conocer este campo.

De momento la forja no tiene un nombre oficial, nos referimos a ella como “la forja de sidelab” o “la forja” a secas. Yo creo que ya se merece tener un nombre. Me he puesto a analizar cómo se llaman las forjas públicas: Alioth, Assembla, BerliOS, bettercodes.org, Bitbucket, BountySource, CodePlex, GitHub, Gitorious, GNU Savannah, Google Code, KnowledgeForge.net, Launchpad, Project Kenai, SourceForge, TuxFamily, Tigris.org, Drupal, freedesktop.org, Gna!, KnowledgeForge.net, JavaForge, java.net, LuaForge, mozdev, Openmoko, RubyForge, SEUL.org, Ourproject.org, OSOR.eu parece el único patrón observable es el sufijo Forge. Aunque a mi también me gusta el sufijo Code. ¿Cual os gusta más? SielabCode? SidelabForge? Con espacio entre las palabras?

Lo peor que tiene la forja es sin duda la dificultad de administración. Todo se ha vuelto mucho más complicado que la simple creación de un repositorio en SVN. Sobre todo considerando que sólo Patxi controla todos los pasos de creación de usuarios, gestión de proyectos, permisos, etc.

Por ello, Arek, un becario del departamento está desarrollando un panel de control vía web que permita administrar todos los aspectos de la forja. Esta herramienta surge por la necesidad de facilitar las labores de administración. En el desarrollo del panel de control se identifican tres módulos principales:

  • SidelabCode Admin: Librería Java para la automatización de las tareas de administración: Gestión de LDAP, Apache, Redmine, persmisos del sistema de ficheros, etc. Esta librería está instalada en el servidor que alberga la forja.
  • SidelabCode Rest: API Rest que permite el acceso remoto a SidelabForgeAdmin.
  • SidelabCode Panel: Herramienta web para la administración de la forja sidelab.

El proyecto todavía no está terminado pero va a buen ritmo. Está planificado que esté en Junio.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s