#!/usr/bin/env bash # Script to verify a package to build successfully # Provide pacakge name by the first argument # # Example: # ./verify-package mtl # or # ./verify-package mtl-2.2.2 set -eu die() { >&2 echo "$1" exit 1 } package="${1:-}" if [[ -z $package ]]; then die "Package name is not given" fi here="$(cd "$(dirname "$0")" > /dev/null; pwd)" dir="$(mktemp -d tmp.XXXX)" exit() { cd "$here" rm -rf "$dir" } trap exit EXIT cd "$dir" stack unpack "$package" cd "$(ls | head -n 1)" rm -f stack.yaml stack init --resolver nightly stack build --resolver nightly --haddock --test --bench --no-run-benchmarks cat <