vitales venado secreto puntos para cola cazar blanca ruby-on-rails ruby deployment capistrano

ruby on rails - venado - ¿Cómo apuntar a un compromiso específico SHA con despliegue de capistrano



puntos vitales del venado cola blanca (4)

Me pregunto cómo puedo dirigir un SHA de compromiso específico en Git para su despliegue, usando Capistrano. Debería ser algo así como

cap deploy --version=<sha targeted>

Parece que no puede encontrar la respuesta a esto después de mucha búsqueda.


preguntar: rama, ''maestro''

Solicita la entrada, pero el valor predeterminado es ''maestro'' si presiona regresar.


La respuesta de molf no funcionó para mí (usando capistrano 2.11.2). Tuve que usar "revisión" en lugar de rama, así:

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy


Capistrano 3

En su deploy.rb o archivo de etapa específica como config/deploy/production.rb

set :branch, ENV.fetch(''REVISION'', ''master'')

Esto le permite apuntar a una revisión de git específica. Acepta un SHA pero también cualquier cosa que resuelva una revisión real (p. Ej. Etiqueta de git, etiqueta anotada o rama).

Úselo en la línea de comando configurando la variable de entorno REVISION , por ej.

bundle exec cap production deploy REVISION=80655da8d80aaaf92ce5357e7828dc09adb00993 bundle exec cap staging deploy REVISION=my-topic-branch


Para Capistrano 2.9 hasta 3.0:

cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

Para versiones anteriores de Capistrano , puede implementar una determinada instrucción / árbol / rama / etiqueta de git haciendo esto:

cap -s branch=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy

En algunos casos, también puede ser necesario especificar el entorno como argumento. production es solo un ejemplo.

cap production -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy