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

Safe HaskellNone
LanguageHaskell2010

B9.Invokation

Synopsis

Documentation

data B9Invokation a Source #

A monad encapsulating all configuration adaptions happening before any actual build actions are performed. Use invokeB9 to execute these things. Inside the B9Invokation monad you can influence and inspect the b9 configuration, the permanent, as well as the transient.

invokeB9 :: B9Invokation a -> IO (a, Bool) Source #

Run a B9Invokation. If the user has no B9 config file yet, a default config file will be created.

invokeB9_ :: B9Invokation a -> IO Bool Source #

Run a B9Invokation and ignore the results of the invokation monad and instead return the results of the _buildAction. See: invokeB9

overrideWorkingDirectory :: FilePath -> B9Invokation () Source #

Override the current working directory during execution of the actions added with doAfterConfiguration.

doAfterConfiguration :: ReaderT B9Config IO Bool -> B9Invokation () Source #

Add an action to be executed once the configuration has been done.

overrideB9ConfigPath :: SystemPath -> B9Invokation () Source #

Override the B9 configuration path

modifyInvokationConfig :: (B9Config -> B9Config) -> B9Invokation () Source #

Modify the current B9Config. The modifications are not reflected in the config file or the ConfigParser returned by askInvokationConfigParser.

modifyPermanentConfig :: (B9Config -> B9Config) -> B9Invokation () Source #

Modify the current B9Config. The modifications are not reflected in the config file or the ConfigParser returned by askInvokationConfigParser.