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