Safe Haskell | None |
---|
Propellor.Types
- data Host = Host [Property] SetAttr
- data Attr
- type SetAttr = Attr -> Attr
- newtype Propellor p = Propellor {
- runWithAttr :: ReaderT Attr IO p
- data Property = Property {}
- data RevertableProperty = RevertableProperty Property Property
- class IsProp p where
- type Desc = String
- data Result
- = NoChange
- | MadeChange
- | FailedChange
- class ActionResult a where
- getActionResult :: a -> (String, ColorIntensity, Color)
- data CmdLine
- data PrivDataField
- type GpgKeyId = String
- data SshKeyType
- = SshRsa
- | SshDsa
- | SshEcdsa
- | SshEd25519
- module Propellor.Types.OS
- module Propellor.Types.Dns
Documentation
Everything Propellor knows about a system: Its properties and attributes.
The attributes of a host. For example, its hostname.
Propellor's monad provides read-only access to attributes of the system.
Constructors
Propellor | |
Fields
|
The core data type of Propellor, this represents a property that the system should have, and an action to ensure it has the property.
Constructors
Property | |
Fields
|
data RevertableProperty Source
A property that can be reverted.
Constructors
RevertableProperty Property Property |
Instances
Methods
describe :: p -> Desc -> pSource
Sets description.
requires :: p -> Property -> pSource
Indicates that the first property can only be satisfied once the second one is.
Instances
Constructors
NoChange | |
MadeChange | |
FailedChange |
class ActionResult a whereSource
Results of actions, with color.
Methods
getActionResult :: a -> (String, ColorIntensity, Color)Source
Instances
data PrivDataField Source
Note that removing or changing field names will break the serialized privdata files, so don't do that! It's fine to add new fields.
module Propellor.Types.OS
module Propellor.Types.Dns