[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Automatización de actualizaciones en Java
- To: mindfood@xxxxxxxxxxxxxxx
- Subject: Automatización de actualizaciones en Java
- From: Daniel Blázquez <daniel.blazquez@xxxxxxxxxxxxx>
- Date: Fri, 04 Feb 2005 13:05:01 +0100
- Delivered-to: mailing list mindfood@orange-soft.com
- Delivered-to: moderator for mindfood@orange-soft.com
- Mailing-list: contact mindfood-help@orange-soft.com; run by ezmlm
- User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)
Hola amigos de Mindfood,
esta es la primera vez que recurro a la lista para solicitar consejo,
aunque llevo bastante tiempo disfrutando de vuestras aportaciones.
Simplemente, quería sondear opiniones y experiencias previas que tengais
relacionadas con automatización de despliegues en Java. La idea es crear
un componente que esté corriendo permanente en los servidores a
actualizar que, a partir de un "paquete de actualización", sea capaz de
modificar una instalación concreta.
Concretando un poco más, un contexto típico sería un servidor corriendo
un contenedor de aplicaciones usando como persistencia una base de datos
relacional. Por tanto las necesidades de actualización pueden incluir:
- parar/arrancar servicios (W32) o demonios (UNIX)
- comportamiento transaccional (si algo falla, volver a la instalación
previa)
- capacidad de actuar sobre la base de datos (crear/modificar tablas,
introducir datos...)
- capacidad de actualizar el componente desplegado (por ejemplo,
sustituir un WAR)
- NO necesario control extensivo de versiones: la más reciente siempre
sustituye a la anterior
Desde un primer momento, vengo pensando en ANT como director de
orquesta. La filosofía que me parece más correcta es simplificar el
componente de actualización y trasladar la funcinalidad al "paquete de
actualización".
Así, el componente de actualización sólo se ocuparía de descomprimir el
archivo de actualización (que contendría todos los archivos necesarios)
y de lanzar un script ANT: algo parecido a un "descriptor de actualización".
Sería necesario crear tareas básicas e iniciales como lanzar un script
SQL o parar/arrancar servicios, pero veo como algo muy positivo que si
en una actualización concreta es necesario realizar alguna operación que
no se ha previsto en el desarrollo del componente de actualización, es
tan sencillo como incluír una nueva tarea ANT en el "paquete de
actualización" e incluirla en el "descriptor de actualización".
Ahora mismo estoy en una situación muy "early stage", por lo que me
gustaría recibir cualquier aportación para mejorar su diseño o filosofía
Bueno pues espero opiniones, críticas, sugerencias...
Muchas gracias por adelantado!
********************************************
Daniel Blázquez
IT Consultant, Donewtech Solutions, S.L.
Zuatzu Business Park, Urumea Building
E-20018 San Sebastian
Tel.: +34 943223031
Fax: +34 943316385
Email: daniel.blazquez@xxxxxxxxxxxxx <mailto:daniel.blazquez@xxxxxxxxxxxxx>
Internet: http://www.donewtech.com
********************************************