#!/bin/sh

set -e
set -u

escape() {
    echo "$1" | sed -e 's/@/@@/g'
}

pocket=$(escape "$1")
package=$(escape "$2")
commit=$(escape "$3")
principal=$(escape "$4")

base=build.hooks.failed_submit.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 "A new job has @{@color(red)failed} to be submitted to the Invirtibuilder:"
 echo
 echo "pocket: $pocket"
 echo "package: $package"
 echo "commit: $commit"k
 echo "principal: $principal"
 echo
 echo -n "Failure: ";
 ( cat | sed -e 's/@/@@/g' ) ) | zwrite -c "$class" -i "${instance:-$commit}" -s "${zsig:-failed-submit}: $pocket" -d