Added reporting
[invirt/packages/invirt-dev.git] / build-hooks / pre-build
diff --git a/build-hooks/pre-build b/build-hooks/pre-build
new file mode 100755 (executable)
index 0000000..68c3c57
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+set -e
+set -u
+
+escape() {
+    echo "$1" | sed -e 's/@/@@/g'
+}
+
+build_id=$(escape "$1")
+pocket=$(escape "$2")
+package=$(escape "$3")
+commit=$(escape "$4")
+principal=$(escape "$5")
+version=$(escape "$6")
+inserted_at=$(escape "$7")
+
+base=build.hooks.pre_build.zephyr
+class=$(invirt-getconf "$base.class" 2>/dev/null || :)
+instance=$(invirt-getconf "$base.instance" 2>/dev/null || :)
+zsig=$(invirt-getconf "$base.zsig" 2>/dev/null || :)
+
+if [ -z "$class" ]; then
+  echo "I don't know where to send a commit zephyr!" >&2
+  echo "Please provide a value for $base.class in" >&2
+  echo "your invirt config file." >&2
+  exit 1
+fi
+
+(echo "About to begin an Invirtibuild of $package v$version in $pocket."
+ echo "from commit $commit.";
+ echo
+ echo "(Build $build_id was submitted by $principal at $inserted_at.)") | zwrite -c "$class" -i "${instance:-build_$build_id}" -s "${zsig:-pre-build}: $pocket" -d