构建 Haskell 项目
本指南涵盖的内容 #
有关语言版本和其他构建环境特定信息,请访问我们的参考页面
本指南的其余部分涵盖了在 Travis CI 上配置 Haskell 项目。如果您不熟悉 Travis CI,请先阅读我们的 教程 和 构建配置 指南。
指定 Haskell 编译器版本 #
Travis CI 上的 Haskell 环境预装了最新版本的 GHC(Glasgow Haskell 编译器)。有关预装版本的详细列表,请查看构建日志中的“构建系统信息”。
您可以使用 major.minor
表示法指定一个或多个 GHC 版本。补丁级别版本(例如 7.6.2
)可能会随时更改。
language: haskell
ghc:
- "7.10"
- "7.8"
- "7.6"
- "8.4.1"
依赖项管理 #
默认情况下,Travis CI 使用 cabal
来管理项目的依赖项。
cabal install --only-dependencies --enable-tests
指定 cabal-install 版本 #
您可以指定使用的 cabal
版本。
language: haskell
cabal: "2.4"
ghc:
- "8.6.4"
子目录中的多个包 #
如果您在子目录中有多个包(每个包都包含一个 .cabal
文件),您可以在环境变量中指定这些目录。
language: haskell
ghc:
- "7.10"
- "7.8"
- "7.6"
env:
- PACKAGEDIR="some-package"
- PACKAGEDIR="some-other-package"
before_install: cd ${PACKAGEDIR}
然后构建矩阵将被构建,以便每个包都使用每个版本的 GHC 进行编译。
Hackage 部署 #
Travis 可以自动将您的包上传到 Hackage。请参见 Hackage 部署。
构建配置参考 #
您可以在我们的 Travis CI 构建配置参考 中找到有关 Haskell 的构建配置格式的更多信息。
使用 Stack 构建 #
如果您想使用 Stack 构建项目,请查看 Travis CI 上的 Stack。