servidor de compilação LaTeX com git

2

Eu tenho um projeto LaTeX no git, existe um makefile. Então, basicamente, um servidor teria que fazer isso:

git checkout master
make > logfile 2>&1

Dado que eu coloco um repo no servidor.

Eu poderia fazer isso com um cron job, mas parece que falta o ponto. Existe alguma maneira de iniciar isso depois que eu empurrei via SSH?

    
por Martin Ueding 12.10.2011 / 13:51

1 resposta

3

Você pode fazer isso no git nativo com um gancho de pós-recebimento. Desde que você não deveria estar empurrando para um repositório não-nu, você precisará de um script ao longo das linhas deste

#!/bin/sh
target="/tmp/math"
exec > "$target/$(date +%s)_$(uuidgen).log" 2>&1
mkdir -p "$target"
GIT_WORK_TREE="$target" git checkout -f
cd "$target"
make

Coloque isso em hooks/post-receive dentro do repositório nu, e você deve estar pronto (note que isso não irá criar $TARGET_DIR , você terá que fazer isso manualmente)

    
por dutchie 12.10.2011 / 20:21