#!/usr/bin/env zsh
set -e
echo "First Build"
make mozaddons
# Zips are unstable with hashes
cd artifacts
ZIPNAME="$(jq -r '.name + "-" + .version + "-unsigned.zip"' ../manifest.json)"
unzip "$ZIPNAME"
rm "$ZIPNAME"
HASH1="$( (find . -type f -print0  | sort -z | xargs -0 sha512sum;
  find . \( -type f -o -type d \) -print0 | sort -z | \
    xargs -0 stat -c '%n %a') \
    | sha512sum)"
cd ..
echo "Got Hash $HASH1"
sleep 1;
echo "Second Build"
make mozaddons
# Zips are unstable with hashes
cd artifacts
unzip "$ZIPNAME"
rm "$ZIPNAME"
HASH2="$( (find . -type f -print0  | sort -z | xargs -0 sha512sum;
  find . \( -type f -o -type d \) -print0 | sort -z | \
    xargs -0 stat -c '%n %a') \
    | sha512sum)"
cd ..
echo "Got Hash $HASH2"
if [[ "$HASH1" != "$HASH2" ]]; then echo -e "\x1b[0;31mNot reproducible!\x1b[0m"; exit 1; else echo -e "\x1b[0;32mReproducible :3\x1b[0m"; fi;