2008-10-08 22 views
14

Soy un gran admirador de Capistrano, pero necesito desarrollar un script de implementación automatizado para una tienda solo para Java. Miré a Ant y Maven y no parecen estar bien orientados a la administración remota como Capistrano: parecen mucho más centrados en simplemente construir y empaquetar aplicaciones. ¿Hay una herramienta mejor por ahí?Capistrano para Java?

Respuesta

14

No creo que exista una aplicación similar a Capistrano para aplicaciones web Java, pero eso realmente no debería impedirle usarla (o alternativas como Fabric) para implementar sus aplicaciones. Como ya dijiste, Ant es más un reemplazo para GNU Make, mientras que Maven es una aplicación principal de buildout/administración de dependencias.

Como las aplicaciones web de Java son gracias a que el contenedor .war depende menos de las bibliotecas externas, puede (dependiendo de su servidor de aplicaciones) hacer que la implementación de una aplicación sea tan sencilla como ejecutar una solicitud HTTP PUT simple.

Pero si necesita pasos adicionales, Fabric me ha funcionado muy bien hasta ahora y supongo que Capistrano también ofrece operaciones genéricas de comando de shell, poner y obtener. Así que no buscaría por mucho tiempo una alternativa si lo que ya tiene funciona :-)

+0

Nota: Fabric está en Python y se puede encontrar aquí http://www.nongnu.org/fab/ –

+0

Solo para el registro: Después de leer esta publicación en 2014 hice una prueba de impedancia de Fabric para una tarea en particular en nuestro proceso de deplyment Funcionó muy bien y ahora estamos utilizando Fabric para más o menos todos nuestros pasos de implementación. Implementamos un puñado de aplicaciones de servidor Java en una amplia gama de servidores diferentes. – AndersG

2

En mi trabajo usamos Capistrano exclusivamente para implementar todas nuestras aplicaciones Java. Definitivamente es posible.

+0

¿Cómo ... puede guiarme para mantener la última versión de la guerra> –

5

Creo que controltier (ver: http://controltier.org) es lo que busca. Aunque Controltier no necesita ser utilizado exclusivamente para implementaciones Java.

Ver este extracto de los documentos (véase: control tier documentation):

Es ControlTier lo mismo que Capistrano, Tela, o Func?

En sus conceptos más fundamentales, ControlTier, Capistrano, Tela, y Func son herramientas similares. Nos definitivamente llamamos a Capistrano, Fabric, y Func Basic Command Dispatching Frameworks.

Sin embargo, ControlTier, por diseño, va mucho más allá de lo que ofrecen estas otras herramientas . Las bibliotecas de automatización y las herramientas basadas en web que ControlTier proporcionan están diseñadas para y le permiten crear sistemas de automatización completos listos para usar por empresa o equipos de operaciones web a gran escala. También hay características como gestión de errores y registro centralizado que simplemente no están en el alcance de otras herramientas de envío de comandos .

Además, Capistrano es una herramienta basada en Ruby que se enfoca principalmente en las necesidades de la comunidad Ruby on Rails. ControlTier, aunque está escrito en Java, no requiere que conozca Java como utilícelo. De hecho, puede usar cualquiera de los lenguajes de script con los que esté cómodo (incluido el rubí). ControlTier intenta ser como el lenguaje y la plataforma (Linux, Unix, Windows, etc.) neutral como sea posible.

+0

ControlTier ahora está obsoleto por Rundeck.org – David

0

Capistrano podría implementar toda la aplicación web básica. Despliegues para los diferentes idiomas son casi los mismos:

  1. código de actualización
  2. empuje el código de servidor de producción
  3. preparar los archivos de configuración para este despliegue
  4. servidor de reinicio. (thin, nginx, tomcat)

En mi empresa, utilizamos Capistrano para implementar aplicaciones java, Vuejs, php, ruby, python.