Ejecutar script de shell en Rails solo genera la 1 línea

Estoy tratando de hacer que un controller de Rails extraiga el contenido más reciente de un repository de bit bucket. En la mayoría de los casos, este es un éxito, el único problema que tengo mientras pruebo, parece que solo puedo hacer que la página muestre la primera línea que devuelve el guión y que no parece ejecutar el rest del guión.

Aquí está mi script bash

#!/bin/bash -l GIT_REPO='IMAREPO' TMP_GIT_CLONE=TEMPPATH PUBLIC_WWW=SITEPATH if [ -d $TMP_GIT_CLONE ]; then rm -Rf $TMP_GIT_CLONE fi git clone $GIT_REPO $TMP_GIT_CLONE jekyll build --source $TMP_GIT_CLONE --destination $PUBLIC_WWW rm -Rf $TMP_GIT_CLONE exit 

y en el controller de Rails que estoy haciendo

 @result = %x[/var/srv/pulldevelopment.sh] 

Que a su vez solo ponen una sola línea del script que es

Clonación en '/ root / tmp / git / blah' …

Sí, esto es esperado. De manera pnetworkingeterminada, Git solo imprime el estado de progreso si stderr está conectado a un TTY. Puede reproducir este comportamiento en un terminal con:

 $ git clone $GIT_REPO 2>&1 | cat 

Pass: --progress para get siempre el estado de progreso en la stream stderr. Ver git-clone (1) .