tracks/haskell/.travis.yml in trackler-2.0.0.8 vs tracks/haskell/.travis.yml in trackler-2.0.0.9
- old
+ new
@@ -9,15 +9,15 @@
directories:
- $HOME/.stack # Global stack's cache.
- $HOME/.foldercache # Per exercise `.stack-work` cache.
env:
- - RESOLVER="nightly-2016-07-17" CURRENT="YES" # Equal to each stack.yaml.
- - RESOLVER="nightly" # Latest nightly snapshot.
+ - RESOLVER="lts-7.9" CURRENT="YES" # Equal to each stack.yaml.
+ - RESOLVER="nightly" # Latest nightly snapshot.
matrix:
- allow_failures: # The snapshot `nightly` is just an aliases to
+ allow_failures: # The snapshot `nightly` is just an alias to
- env: RESOLVER="nightly" # the newest version released. We don't want
fast_finish: true # Travis to fail on new incompatible releases.
before_install:
- mkdir -p ${HOME}/bin # Create folder for stack.
@@ -48,28 +48,33 @@
--no-terminal `# Terminal detection is broken.`\
--pedantic `# Enable -Wall and -Werror. `
}
for exercise in ${TRAVIS_BUILD_DIR}/exercises/* ; do
+ exercisename=$(basename "$exercise")
pushd ${exercise}
if ! stat -t examples/*/ > /dev/null 2>&1; then
echo "No examples for ${exercise}!"
exit 1
else
for example in examples/*/ ; do
examplename=$(basename "$example")
- exercisename=$(basename "$exercise")
+
+ buildfolder="${TRAVIS_BUILD_DIR}/build/${exercisename}/${examplename}"
+ mkdir -p "${buildfolder}"
+ cp -r stack.yaml test ${example}/* "${buildfolder}"
+
+ pushd $buildfolder
+
examplecache="${HOME}/.foldercache/${exercisename}/${examplename}/.stack-work"
mkdir -p "$examplecache"
ln -f -s "$examplecache"
echo "testing ${example}"
- rm -f src/*.hs
- mv ${example}/src/*.hs src
- mv ${example}/package.yaml .
-
test_exercise
+
+ popd
done
fi
popd
done