podenv-0.2.0: A container wrapper
Safe HaskellNone
LanguageHaskell2010

Podenv.Config

Description

This module contains the logic to load the dhall configuration

Synopsis

Documentation

load :: Maybe Text -> Maybe Text -> IO Config Source #

Config load entrypoint

decodeExpr :: DhallExpr -> Config Source #

Pure config load

select :: Config -> [Text] -> Either Text ([Text], Application) Source #

Select the application, returning the unused cli args.

data Config Source #

Constructors

ConfigDefault ApplicationRecord

A standalone application, e.g. defaultSelector

ConfigApplication Atom

A single application

ConfigApplications [(Text, Atom)]

A collection of applications

data Atom Source #

Constructors

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)

Constructors

ApplicationRecord 

Instances

Instances details
FromDhall ApplicationRecord Source # 
Instance details

Defined in Podenv.Config

defaultApp :: Application Source #

The default app

defaultSystemConfig :: SystemConfig Source #

The default system config