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

Safe HaskellNone
LanguageHaskell98

Propellor.PropAccum

Synopsis

Documentation

host :: HostName -> Host Source

Starts accumulating the properties of a Host.

host "example.com"
	& someproperty
	! oldproperty
	& otherproperty

props :: PropList Source

Starts accumulating a list of properties.

propertyList "foo" $ props
	& someproperty
	! oldproperty
	& otherproperty

class PropAccum h where Source

Something that can accumulate properties.

Methods

(&) :: IsProp p => h -> p -> h infixl 1 Source

Adds a property.

Can add Properties and RevertableProperties

(&^) :: IsProp p => h -> p -> h infixl 1 Source

Like (&), but adds the property at the front of the list.

getProperties :: h -> [Property HasInfo] Source

(!) :: PropAccum h => h -> RevertableProperty -> h infixl 1 Source

Adds a property in reverted form.

propigateContainer :: PropAccum container => String -> container -> Property HasInfo -> Property HasInfo Source

Adjust the provided Property, adding to its propertyChidren the properties of the provided container.

The Info of the propertyChildren is adjusted to only include info that should be propigated out to the Property.

Any PrivInfo that uses HostContext is adjusted to use the name of the container as its context.