¿Cómo se revierte a la versión implementada anteriormente con capistrano?

79

Intenté usar "Cap rollback" pero aparece el siguiente error:

$ cap rollback

la tarea 'rollback' no existe

¿Hay alguna configuración adicional que deba realizar para que funcionen las reversiones?

Solo lectura
fuente

Respuestas:

154

Acabo de encontrar la respuesta aquí http://github.com/leehambley/railsless-deploy :

despliegue de la tapa: reversión

Solo lectura
fuente
Buen recurso. Este parece tener un par de métodos más y más documentación: capitate.rubyforge.org/recipes/deploy.html
JellicleCat
¿Qué sucede si quiero retroceder no solo a la implementación anterior, sino a una anterior? ¿Hay algún argumento o variable de entorno para pasar a este comando que especifique a qué versión quiero retroceder?
Ernesto
¿Hay alguna forma de retroceder a alguna versión específica? Esta respuesta no funciona en Capistrano 3.
Atul Khanduri
48

Si está utilizando diferentes entornos (por ejemplo, puesta en escena, producción) utilizando la gema de varias etapas (por ejemplo, tiene require 'capistrano/ext/multistage'en su archivo deploy.rb), entonces Capistrano se establece por defecto en la puesta en escena. Entonces, para revertir un entorno de producción, haría lo siguiente:

cap production deploy:rollback

y, asumiendo que tiene los valores predeterminados, esto revertiría la preparación:

cap deploy:rollback

Vale la pena saber si está utilizando diferentes entornos y preguntarse por qué no funciona para la producción.

Snowcrash
fuente
14

retroceso simple:

$ cap deploy:rollback

retroceder a una versión específica:

$ cap deploy:rollback -s previous_release= [path to previous release under releases folder ]
Ritmo Shahriar
fuente
9

En realidad lo es

cap deploy:rollback:code

deploy: rollback puede retroceder a una revisión anterior, no necesariamente a una revisión implementada previamente.

Martín
fuente
6
Me doy cuenta de que un tiempo significativo separa esta respuesta de la respuesta aceptada, pero de acuerdo con el código para el rollbackespacio de nombres, a partir de hoy, la acción predeterminada para cap deploy:rollbackhace lo mismo que una reversión de código más un reinicio. Ref: github.com/capistrano/capistrano/blob/master/lib/capistrano/…
jefflunt