propellor-3.0.4: property-based host configuration management in haskell

Safe HaskellNone
LanguageHaskell98

Propellor.Types.Core

Synopsis

Documentation

data Host Source

Everything Propellor knows about a system: Its hostname, properties and their collected info.

Constructors

Host 

newtype Propellor p Source

Propellor's monad provides read-only access to info about the host it's running on, and a writer to accumulate EndActions.

Constructors

Propellor 

Fields

runWithHost :: RWST Host [EndAction] () IO p
 

data EndAction Source

An action that Propellor runs at the end, after trying to satisfy all properties. It's passed the combined Result of the entire Propellor run.

Constructors

EndAction Desc (Result -> Propellor Result) 

data Props metatypes Source

Props is a combination of a list of properties, with their combined metatypes.

Constructors

Props [ChildProperty] 

data ChildProperty Source

Since there are many different types of Properties, they cannot be put into a list. The simplified ChildProperty can be put into a list.

class IsProp p where Source

Methods

setDesc :: p -> Desc -> p Source

getDesc :: p -> Desc Source

getChildren :: p -> [ChildProperty] Source

addChildren :: p -> [ChildProperty] -> p Source

getInfoRecursive :: p -> Info Source

Gets the info of the property, combined with all info of all children properties.

getInfo :: p -> Info Source

Info, not including info from children.

toChildProperty :: p -> ChildProperty Source

Gets a ChildProperty representing the Property. You should not normally need to use this.

getSatisfy :: p -> Propellor Result Source

Gets the action that can be run to satisfy a Property. You should never run this action directly. Use ensureProperty instead.

Instances

IsProp ChildProperty Source 
IsProp (Property metatypes) Source 
IsProp (RevertableProperty setupmetatypes undometatypes) Source