From 5c214478cc2d9e78ba78f3911f9fede2029c829f Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Mon, 14 Aug 2023 20:50:20 -0400 Subject: Turn pre-push into a record-keeping ci This is necessary because otherwise I have no record of when I had a successful build. --- Biz/Ide/hooks/pre-push | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) (limited to 'Biz') diff --git a/Biz/Ide/hooks/pre-push b/Biz/Ide/hooks/pre-push index c27046d..a1dccc3 100755 --- a/Biz/Ide/hooks/pre-push +++ b/Biz/Ide/hooks/pre-push @@ -1,2 +1,35 @@ #!/usr/bin/env bash -lint "${BIZ_ROOT:?}"/**/* && bild --test "${BIZ_ROOT:?}"/**/* +# +# a simple ci that saves its results in a git note, formatted according to +# RFC-2822, more or less. +# +## + set -euo pipefail + [[ -n $(git status -s) ]] && { echo fail: dirty worktree; exit 1; } +## + at=$(date -R) + user=$(git config --get user.name) + mail=$(git config --get user.email) +## + if lint "${BIZ_ROOT:?}"/**/* + then + lint_result="good" + else + lint_result="fail" + fi +## + git notes --ref=ci append -m "Lint-is: $lint_result" + git notes --ref=ci append -m "Lint-by: $user <$mail>" + git notes --ref=ci append -m "Lint-at: $at" +## + if bild --test "${BIZ_ROOT:?}"/**/* + then + test_result="good" + else + test_result="fail" + fi +## + git notes --ref=ci append -m "Test-is: $test_result" + git notes --ref=ci append -m "Test-by: $user <$mail>" + git notes --ref=ci append -m "Test-at: $at" +## -- cgit v1.2.3