Capistrano es una herramienta de código abierto para ejecutar scripts en múltiples servidores; su uso principal es la implementación de aplicaciones web . Automatiza el proceso de hacer que una nueva versión de una aplicación esté disponible en uno o más servidores web , incluidas tareas de soporte como cambiar bases de datos.
![]() | |
Autor (es) original (es) | Jamis Buck, Lee Hambley |
---|---|
Lanzamiento estable | 3.14.1 [1] / 10 de junio de 2020 |
Repositorio | github |
Escrito en | Rubí |
Sistema operativo | Linux , OpenBSD , macOS |
Tipo | Herramienta de implementación |
Licencia | Licencia MIT |
Sitio web | capistranorb |
Capistrano está escrito en el lenguaje Ruby y se distribuye utilizando el canal de distribución RubyGems . Es una consecuencia del marco de aplicación web Ruby on Rails , pero también se utiliza para implementar aplicaciones web escritas en otros lenguajes, por ejemplo, PHP .
Capistrano se implementa principalmente para su uso en la línea de comandos del shell de UNIX . Un usuario puede elegir entre muchas recetas de Capistrano, por ejemplo, implementar los cambios actuales en la aplicación web o volver al estado de implementación anterior.
Originalmente llamado SwitchTower, el nombre se cambió a Capistrano en marzo de 2006 debido a un conflicto de marca registrada. [2] El autor original, Jamis Buck, anunció el 24 de febrero de 2009 que ya no es el responsable del proyecto. [3]
Internos
Capistrano es una utilidad y un marco para ejecutar comandos en paralelo en varias máquinas remotas, a través de SSH. Utiliza un lenguaje simple específico de dominio tomado prestado en parte de la herramienta Rake . También admite conexiones de túnel a través de alguna máquina de puerta de enlace para permitir que las operaciones se realicen detrás de VPN y firewalls.
Capistrano fue diseñado originalmente para simplificar y automatizar la implementación de aplicaciones web en entornos distribuidos, y originalmente venía incluido con un conjunto de tareas diseñadas para implementar aplicaciones Ruby on Rails. Las tareas de implementación están ahora (a partir de Capistrano 2.0) opcionales y requieren que los clientes pongan explícitamente "cargar 'implementar'" en sus recetas. [4]
Ejemplo de Capfile
tareas : xml_libs , : hosts => "www.capify.org" no funcionan "-X1 ls / usr / lib | grep -i xml" final
Esto define una sola tarea, llamada "xml_libs", y dice que debe ejecutarse solo en el host "www.capify.org". Cuando se ejecuta, mostrará todos los archivos y subdirectorios en / usr / lib que incluyen el texto "xml" en su nombre. Suponiendo que el archivo cap está en el directorio actual, el usuario ejecutaría esa tarea de esta manera:
cap xml_libs
Ver también
Referencias
- ^ "capistrano | RubyGems.org | el anfitrión de la gema de tu comunidad" . RubyGems.org . Consultado el 30 de noviembre de 2020 .
- ^ "SwitchTower: Renombrado" . weblog.jamisbuck.org. 2006-03-05.
- ^ "los {buckblogs: here}: Net :: SSH, Capistrano y Saying Goodbye" . Weblog.jamisbuck.org. 2009-02-24 . Consultado el 21 de marzo de 2014 .
- ^ "capistrano / README.md en master · capistrano / capistrano · GitHub" . Github.com. 2013-06-13 . Consultado el 21 de marzo de 2014 .
Otras lecturas
- Zygmuntowicz, Ezra; Tate, Bruce; Begin, Clinton (mayo de 2008). Implementación de aplicaciones de rieles: una guía paso a paso . ISBN 978-0-9787392-0-1.