Building a Haskell Project
What This Guide Covers
Haskell builds are not available on the OS X environment.
The Haskell VM has recent versions of GHC pre-installed.
For precise versions pre-installed on the VM, please consult “Build system information” in the build log.
For full up-to-date list of provided tools, see
our CI environment guide. Key build lifecycle commands (dependency installation, running tests) have
defaults that use
cabal. It is possible to override them to use
make or any other build tool and dependency management tool.
Specifying the GHC version
You can specify one or more GHC versions:
ghc: - 7.8 - 7.6 - 7.4
It is recommended that you only use the major and minor versions to specify the version to use, as we may update the patchlevel releases at any time.
Default Test Script
Default test script Travis CI Haskell builder will use is
cabal configure --enable-tests && cabal build && cabal test
It is possible to override test command as described in the general build configuration guide, for example:
script: - cabal configure --enable-tests -fFOO && cabal build && cabal test
Travis CI uses cabal
By default Travis CI use
cabal to manage your project’s dependencies.
The exact default command is
cabal install --only-dependencies --enable-tests
It is possible to override dependency installation command as described in the general build configuration guide, for example:
install: - cabal install QuickCheck
For Haskell projects,
ghc can be given as arrays
to construct a build matrix.