Haskell Roles

ensure-cabal

Ensure cabal is installed

This role installs the cabal-install package and ensures the hackage packages list exists. This role uses the Fedora copr package.

ensure-ghc

Ensure ghc is installed

Installs the specified ghc version and the cabal tool. This role uses the Fedora package module.

Role Variables

ghc_version
Default: latest

The ghc version.

ensure-hlint

Ensure hlint is installed

Installs the hlint tool using the distro package.

ensure-haskell-stack

Ensure the Haskell tool stack is installed.

Installs the specified stack version and setup the toolchain. This role uses the Fedora copr package.

Role Variables

lts_version

The lts version.

cabal-test

Run the cabal test command.

Role Variables

cabal_target

The cabal target(s) to test.

cabal_install_args

Install command line arguments, for example to skip executable using “–lib”.

cabal_build_args

Build command line arguments, for example to write hie files using “-fwrite-ide-info”.

zuul_work_dir
Default: {{ zuul.project.src_dir }}

Directory to run the cabal command in.

haskell-stack-test

Run the Haskell stack test command.

Role Variables

haskell_stack_target

The stack target(s) to test.

lts_version

The lts version.

zuul_work_dir
Default: {{ zuul.project.src_dir }}

Directory to run the cabal command in.

hlint

Run the hlint command.

Role Variables

hlint_report_name
Default: hlint.html

The name of the report.

zuul_work_dir
Default: {{ zuul.project.src_dir }}

Directory to run the hlint command in.