Normalmente, cuando uso capistrano, voy a ir y elimino manualmente versiones antiguas de una aplicación desplegada. Entiendo que puede ejecutar cap deploy:cleanup
pero eso aún deja 5 lanzamientos. ¿Es este su propósito? ¿Hay alguna otra manera de limpiar las versiones anteriores a solo 1 despliegue anterior?Capistrano: limpiar versiones anteriores
Respuesta
Puede usar la variable :keep_releases
para anular el valor predeterminado 5. Verifique this.
Genial. Eso es exactamente lo que estaba buscando. Gracias. – Josh
¡De nada! ¡Podrías haber aceptado la respuesta! :-) – jcrossley3
@Josh, definitivamente, acepte esta respuesta si solucionó su problema. Ambos obtienen puntos de representante de esta manera. –
Usted puede hacer esto de forma automática mediante el establecimiento de esto en su deploy.rb
set :keep_releases, 1
after "deploy:update", "deploy:cleanup"
En el pasado (no sé exactamente qué versión) esta devolución de llamada era el valor por defecto, pero más tarde el desarrollador decidí dejar al usuario a decidir. En capistrano 3, se volvió a agregar al flujo de despliegue predeterminado.
Gracias, Diego. Su respuesta funciona correctamente en Capistrano v2.14.1. – scarver2
Gracias @diego esto realmente ayudó! – gouravtiwari21
Parece que [Capistrano 3 llama a 'implementar: limpieza' como parte del flujo de implementación] (https://github.com/capistrano/capistrano/blob/690afc0c5c3c43d2920b0bfdeb9323c286b12106/lib/capistrano/tasks/deploy.rake#L23). – Dennis
Si desea eliminar todas las emisiones, excepto el último 3, por ejemplo, puede ejecutar:
cap deploy:cleanup -s keep_releases=3
No funciona. 'optionParser :: InvalidOption: opción no válida: s' – Snowman
que tenía un problema similar. Quería mantener los 5 lanzamientos para implementaciones normales, pero es necesario para ciertas situaciones para poder eliminar todas las versiones anteriores.
Pude hacer esto con una tarea personalizada. Cree un archivo lib/capistrano/tasks/cleanup.rake
y agregue el siguiente código.
desc "Remove all but the last release"
task :cleanup_all do
set :keep_releases, 1
invoke "deploy:cleanup"
end
Para ejecutar el uso bundle exec cap staging cleanup_all
o cap staging cleanup_all
- 1. Capistrano no creará versiones
- 2. Detectar versiones anteriores de IE
- 3. Deserialización compatibilidad con versiones anteriores
- 4. Versiones de clase para admitir la compatibilidad con versiones anteriores
- 5. .lib y .dll Compatibilidad con versiones anteriores
- 6. Haciendo servicios WCF compatibles con versiones anteriores
- 7. GitHub: buscando en versiones anteriores de archivos
- 8. ISerializable y compatibilidad con versiones anteriores
- 9. Es nuevo C++ compatible con versiones anteriores
- 10. Motivo para usar versiones anteriores de jQuery?
- 11. Cómo eliminar versiones anteriores de Xcode
- 12. Eliminar versiones anteriores de Ruby (en Windows)
- 13. Descargar versiones anteriores de jQuery UI
- 14. Usando `@ unittest.skipIf` con versiones anteriores de Python
- 15. Compatibilidad con versiones anteriores y servicios web
- 16. MS Office PIAs "compatibilidad con versiones anteriores"
- 17. Compatibilidad con versiones anteriores de SQL Server en Entity Framework?
- 18. Compatibilidad con versiones anteriores de Java 6 Source y SQL
- 19. Compatibilidad con versiones anteriores en .NET con BinaryFormatter
- 20. Windows API Codepack Compatibilidad con versiones anteriores en Windows XP
- 21. Temas de Android Holo con compatibilidad con versiones anteriores
- 22. Integración de Kiosco sin romper la compatibilidad con versiones anteriores
- 23. ¿Cuán importante es la compatibilidad con versiones anteriores?
- 24. ¿Cómo cambio a versiones anteriores del entorno ruby / rails?
- 25. ¿Compatibilidad con versiones anteriores o posteriores en Android?
- 26. Renombrado de funciones con preservación de compatibilidad con versiones anteriores
- 27. ¿Es OpenGL compatible con versiones anteriores de OpenGL ES?
- 28. Purga de todas las versiones anteriores de CMFEditions
- 29. Compatibilidad con versiones anteriores del repositorio de Git
- 30. WCF Service - Problema de compatibilidad con versiones anteriores
es siempre una buena idea tener algunas versiones anteriores, a continuación, si la última implementar contiene un gran error puede revertir rápidamente con Capistrano (tapa de despliegue: rollback) a la lanzamiento anterior hasta que lo arregles. – damoiser