29 lines
464 B
Bash
Executable File
29 lines
464 B
Bash
Executable File
set -euxo pipefail
|
|
|
|
REPOPATH="/var/git-cloner/repo"
|
|
git config --global --add safe.directory "$REPOPATH"
|
|
cd "$REPOPATH"
|
|
|
|
int_handler() {
|
|
echo "received signal to exit"
|
|
exit 0
|
|
}
|
|
trap int_handler SIGTERM
|
|
trap int_handler SIGINT
|
|
|
|
while true
|
|
do
|
|
# pull or clone
|
|
if [ -d ".git" ]; then
|
|
git pull
|
|
else
|
|
git clone "$URL" .
|
|
fi
|
|
|
|
chmod -R a+r ./* || true
|
|
|
|
# allow sleep to be interrupted
|
|
sleep "$INTERVAL" &
|
|
wait $!
|
|
done
|