Сервер сборки LaTeX с git

У меня есть проект LaTeX в git, есть make-файл. Таким образом, в основном сервер должен был бы сделать это:

git checkout master
make > logfile 2>&1

Учитывая, что я запихиваю в репо на сервер.

Я мог бы сделать это с помощью cron, но, похоже, упускает из виду суть. Есть ли способ инициировать это после того, как я нажал через SSH?

1 ответ

Вы можете сделать это в нативном git с помощью хука post-receive. Так как вы не должны подталкивать к непроигрышному репо, вам понадобится скрипт в соответствии с этим

#!/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

Поместите это в hooks/post-receive внутри голого репо, и вы должны быть готовы (обратите внимание, что это не создаст $TARGET_DIRвам придется делать это вручную)

Другие вопросы по тегам