mirror of
https://github.com/ilyakooo0/Idris-dev.git
synced 2024-11-10 15:16:54 +03:00
41 lines
1.2 KiB
Bash
Executable File
41 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
if [ -n "$TRAVIS" ];
|
|
then
|
|
mkdir -p ~/.local/bin
|
|
export PATH=$HOME/.local/bin:/opt/ghc/$GHCVER/bin:$PATH
|
|
curl --retry 3 -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
|
|
stack config set system-ghc --global true
|
|
stack install --resolver "lts-$STACKVER" stylish-haskell --no-terminal
|
|
fi
|
|
|
|
command -v stylish-haskell >/dev/null 2>&1 || { echo "Could not find stylish-haskell. Aborting." >&2; exit 1; }
|
|
|
|
find . -name \*.hs -and \( -not \( -name Setup.hs -or -path ./.cabal-sandbox/\* -or -path ./dist/\* \) \) | xargs stylish-haskell -i > stylish-out 2>&1
|
|
|
|
# It doesn't do exit codes properly, so we just check if it outputted anything.
|
|
if [ -s stylish-out ];
|
|
then
|
|
echo "Stylish-haskell reported an error :("
|
|
cat stylish-out
|
|
exit 1
|
|
fi
|
|
|
|
rm stylish-out
|
|
|
|
if git status --porcelain|grep .; # true if there was any output
|
|
then
|
|
echo "Git tree is dirty after stylizing.";
|
|
if [ -n "$TRAVIS" ];
|
|
then
|
|
echo "Since we're on Travis, this is a build failure."
|
|
echo "Run ./stylize.sh to stylize your tree and push the changes."
|
|
exit 1
|
|
fi
|
|
else
|
|
echo "Stylish didn't change anything :)"
|
|
exit 0;
|
|
fi
|