aboutsummaryrefslogtreecommitdiff
path: root/aux/ci/git-post-receive.sh
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2022-04-13 14:32:04 -0300
committerEuAndreh <eu@euandre.org>2022-04-13 14:32:04 -0300
commit0c214c0cfb1f0e750deec0c411f180c2ab561cec (patch)
treeaff0e3184ffa4ec9c7e94e685045af5eede8cf64 /aux/ci/git-post-receive.sh
parentTODOs.md: Add #td-dba2ff82-59b3-dd17-06a9-edbc9cffb264 (diff)
downloadeuandre.org-0c214c0cfb1f0e750deec0c411f180c2ab561cec.tar.gz
euandre.org-0c214c0cfb1f0e750deec0c411f180c2ab561cec.tar.xz
aux/ci/: Add
Diffstat (limited to 'aux/ci/git-post-receive.sh')
-rwxr-xr-xaux/ci/git-post-receive.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/aux/ci/git-post-receive.sh b/aux/ci/git-post-receive.sh
new file mode 100755
index 0000000..f813259
--- /dev/null
+++ b/aux/ci/git-post-receive.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+set -eu
+
+for n in $(seq 0 $((GIT_PUSH_OPTION_COUNT - 1))); do
+ opt="$(eval "echo \$GIT_PUSH_OPTION_$n")"
+ if [ "$opt" = skip-ci ] || [ "$opt" = ci-skip ]; then
+ printf "\n'%s' option detected, not running ci-build.sh\n\n" \
+ "$opt"
+ exit 0
+ fi
+done
+
+# shellcheck disable=2034
+read -r _oldrev SHA _refname
+
+PROJECT="$(basename "$PWD" | cut -d. -f1)" # remove .git suffix
+LOGS_DIR="/opt/ci/$PROJECT/logs"
+sh "/opt/ci/$PROJECT/ci-build.sh" "$PROJECT" "$LOGS_DIR" "$SHA" ||:
+
+echo 'To retrigger the build, run:'
+echo "cd /opt/www/$TLD/git/repos/$PROJECT.git/"
+echo "sh /opt/www/$TLD/git/ci/$PROJECT/ci-build.sh" "$PROJECT" "$LOGS_DIR" "$SHA"