You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
601 B
32 lines
601 B
#!/bin/bash
|
|
set -e -u
|
|
|
|
while read oldrev newrev ref
|
|
do
|
|
if [[ $ref =~ .*/main$ ]]; then
|
|
echo "main ref received"
|
|
|
|
echo "moving into temporary work tree"; {
|
|
gitdir=$PWD
|
|
cd $(mktemp -d)
|
|
}
|
|
|
|
echo "checking out latest source"; {
|
|
git --work-tree=$PWD --git-dir=$gitdir checkout --force
|
|
}
|
|
|
|
echo "generating static site"; {
|
|
podman-compose build
|
|
}
|
|
|
|
echo "restarting server"; {
|
|
podman compose down || true
|
|
podman compose up --daemon
|
|
}
|
|
|
|
echo "updating post-receive hook for future runs"; {
|
|
cp hooks/post-receive $0
|
|
}
|
|
fi
|
|
done
|