Git Pull na CGI e na Command Line têm resultados diferentes

4

Eu tenho um webhook "after push" no GitHub que chama um script CGI para atualizar um site Jekyll.

O script:

user@server [~/_repo]# cat cgi-bin/githook.cgi
#!/bin/bash
echo Content-type: text/plain
echo

if [ -z "$HOME" ] ; then
HOME=/home/user
fi

GIT_REPO=$HOME/_repo
PUBLIC_WWW=$HOME/public_html

pushd $GIT_REPO
git pull
echo "$HOME/.rvm/bin/ts_jekyll build --source $GIT_REPO --destination $PUBLIC_WWW"
$HOME/.rvm/bin/ts_jekyll build --source $GIT_REPO --destination $PUBLIC_WWW
popd
echo DONE

O GitHub salva a saída do script como:

~/_repo ~/public_html/cgi-bin
Updating OLD_COMMIT_SHA..NEW_COMMIT_SHA
/home/user/.rvm/bin/ts_jekyll build --source /home/user/_repo/ --destination /home/user/public_html
Configuration file: /home/user/_repo/_config.yml
            Source: /home/user/_repo/
       Destination: /home/user/public_html
      Generating... 
                    done.
 Auto-regeneration: disabled. Use --watch to enable.
~/public_html/cgi-bin
DONE

Esta é a saída que estou esperando, mas o site não está atualizado.
Quando eu faço logon com o SSH e executo user@server [~]# _repo/cgi-bin/githook.cgi , geralmente recebo a mesma saída novamente e o site é atualizado corretamente.

Se eu fizer uma alteração na cópia local, o gancho da Web ainda parecerá funcionar (mesmo que não deva) e a versão na linha de comando mostrará a mensagem apropriada sobre a substituição de alterações locais.

O que poderia estar causando isso?

    
por yakatz 19.02.2015 / 18:29

0 respostas