Safe Haskell | None |
---|---|
Language | Haskell2010 |
This module contains the logic to load the dhall configuration
Synopsis
- load :: Maybe Text -> Maybe Text -> IO Config
- decodeExpr :: DhallExpr -> Config
- select :: Config -> [Text] -> Either Text ([Text], Application)
- data Config
- data Atom
- = Lit ApplicationRecord
- | LamArg ArgName (Text -> ApplicationRecord)
- | LamArg2 ArgName ArgName (Text -> Text -> ApplicationRecord)
- | LamApp (Application -> ApplicationRecord)
- newtype ApplicationRecord = ApplicationRecord {}
- defaultConfigPath :: Text
- defaultApp :: Application
- loadSystem :: IO SystemConfig
- defaultSystemConfig :: SystemConfig
- podenvImportTxt :: Text
Documentation
decodeExpr :: DhallExpr -> Config Source #
Pure config load
select :: Config -> [Text] -> Either Text ([Text], Application) Source #
Select the application, returning the unused cli args.
ConfigDefault ApplicationRecord | A standalone application, e.g. defaultSelector |
ConfigApplication Atom | A single application |
ConfigApplications [(Text, Atom)] | A collection of applications |
Lit ApplicationRecord | A literal application |
LamArg ArgName (Text -> ApplicationRecord) | A paremeterized application |
LamArg2 ArgName ArgName (Text -> Text -> ApplicationRecord) | |
LamApp (Application -> ApplicationRecord) | A functional application |
newtype ApplicationRecord Source #
A wrapper around the true Application type to manage weakly typed configuration (e.g. so that `{ runtime.image = "ubi8" }` can be manually decoded)
Instances
FromDhall ApplicationRecord Source # | |
Defined in Podenv.Config |
defaultApp :: Application Source #
The default app
defaultSystemConfig :: SystemConfig Source #
The default system config