b9-0.5.68: A tool and library for building virtual machine images.

Safe HaskellNone
LanguageHaskell2010

B9.B9Monad

Synopsis

Documentation

runB9 :: B9 a -> B9ConfigAction a Source #

Execute a B9 effect and return an action that needs the B9Config.

Since: 0.5.65

type B9 a = Eff B9Eff a Source #

Definition of the B9 monad. See B9Eff.

This module is used by the _effectful_ functions in this library.

Since: 0.5.65

type B9Eff = '[SelectedRemoteRepoReader, RepoCacheReader, BuildInfoReader, LoggerReader, B9ConfigReader, EnvironmentReader, ExcB9, Lift IO] Source #

Definition of the B9 effect list. It encapsulates logging, a reader for the B9.B9Config and access to the current build id, the current build directory and the artifact to build.

This monad is used by the _effectful_ functions in this library.

Since: 0.5.65

type IsB9 e = (Lifted IO e, CommandIO e, B9Eff <:: e) Source #

A constraint that contains all effects of B9Eff

Since: 0.5.65