Hudson y la integración continua
- Área: Verificación de Entrega Software
- Carácter del recurso: Recomendado
Descripción
Es un sistema de integración continua de proyectos con soporte completo para proyectos Maven2, Ant… Permite a los usuarios automatizar la gestión el ciclo maven de las aplicaciones, pudiendo incluir distintos alcances:
- Compilación
- Despliegue
- Verificación de código estático
Hudson permite realizar una programación de todas las tareas que realiza a partir de una configuración de tiempo o basada en eventos.
Usuarios y permisos
Para la utilización de la herramienta vamos a distinguir entre los siguientes grupos de usuarios:
- Gestor de Proyecto / Director Técnico de Proyecto
- Equipo de Gestión de Servicios
- Equipo de Testing (Usuario normal)
- Equipo de Testing (Usuario privilegiado)
A continuación pasamos a describir los permisos que tendrá cada grupo.
Gestor de Proyecto / Director Técnico de Proyecto
Apartado | Permiso |
---|---|
Global | Lectura |
Tareas | Lectura |
Con estos permisos, este grupo solo tiene acceso a las diferentes tareas de builds de los proyectos, así como al resultado de la ejecución de la misma (por ejemplo, un archivo war) y el log de ejecución.
Equipo de Gestión de Servicios
Apartado | Permiso |
---|---|
Global | Administración |
Con este permiso, este grupo tiene el control completo sobre la aplicación, pudiendo realizar cualquier tarea.
Equipo de Testing
Para el Equipo Testing, se ha pensado en la creación de dos roles diferenciados, que pasamos a describir.
- Usuario normal: Este usuario puede ejecutar las distintas tareas de build que esten dadas de alta en el sistema, así como acceder al workspace de la misma. No podrá crear ni modificar las tareas existentes, ni tampoco podrá eliminar tareas.
Apartado Permiso Global Lectura Tareas Lectura, build y workspace Repositorio de software Etiquetado - Usuario Privilegiado: Este usuario puede realizar todas las tareas pertenecientes al grupo de usuarios anterior, y también puede crear nuevas tareas y modificar las existentes. La creación de este usuario tiene como objetivo dar mayor libertad al Equipo de Testing para que puedan realizar sus actividades con normalidad, a la vez que se mantiene el control sobre la configuración y creación de nuevas tareas.
Apartado Permiso Global Lectura Tareas Lectura, crear, modificar, build y workspace Repositorio de software Etiquetado
Uso en MADEJA
Es recomendable el uso de esta herramienta para la verificación de los procesos de compilación, despliegue y verificación estática de código fuente. Entre otras ventajas te aporta mayor control sobre la estabilidad del software, así como la posibilidad de integrarse con otras herramientas del entorno de trabajo: Subversion, Artifactory, Maven, Sonar. A continuación mencionamos las características que provocan que sea muy ventajosa para las verificaciones mencionadas:
- Posee integración con una buena variedad de software de control de versiones, en particular con Subversion.
- También se puede trabajar sin repositorio para control de versiones, lo cual es útil cuando se tienen proyectos que no cumplan las normas generales de entrega propuestas por MADEJA.
- Posee integración con varias herramientas de build, como por ejemplo con Maven2.
- Te permite descargar la última versión de una aplicación del repositorio y programar ejecuciones de scripts de compilación.
- Existen extensiones de la herramienta, a través de plugins, que te permiten automatizar de manera sencilla el testeo de la calidad de código y reglas de estilo.
Enlaces externos
Contenidos relacionados
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0369 | Plugins de Hudson | Herramienta | Recomendado |