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

Safe HaskellNone




host :: HostName -> Host Source

Starts accumulating the properties of a Host.

host ""
	& someproperty
	! oldproperty
	& otherproperty

class Hostlike h where Source

Something that can accumulate properties.


(&) :: 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 as the first property of the host. Normally, property order should not matter, but this is useful when it does.

getHost :: h -> Host Source

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

Adds a property in reverted form.

propigateInfo :: Hostlike hl => hl -> Property -> (Info -> Info) -> Property Source

When eg, docking a container, some of the Info about the container should propigate out to the Host it's on. This includes DNS info, so that eg, aliases of the container are reflected in the dns for the host where it runs.

This adjusts the Property that docks a container, to include such info from the container.