Safe Haskell | None |
---|
- data Host = Host {}
- data Info
- newtype Propellor p = Propellor {
- runWithHost :: ReaderT Host 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 PrivData = String
- newtype Context = Context String
- anyContext :: Context
- data SshKeyType
- = SshRsa
- | SshDsa
- | SshEcdsa
- | SshEd25519
- module Propellor.Types.OS
- module Propellor.Types.Dns
Documentation
Everything Propellor knows about a system: Its hostname, properties and other info.
Show Host | |
MonadReader Host Propellor |
Propellor's monad provides read-only access to info about the host it's running on.
Propellor | |
|
Monad Propellor | |
Functor Propellor | |
Applicative Propellor | |
MonadCatchIO Propellor | |
MonadIO Propellor | |
MonadReader Host Propellor |
The core data type of Propellor, this represents a property that the system should have, and an action to ensure it has the property.
Property | |
|
data RevertableProperty Source
A property that can be reverted.
class ActionResult a whereSource
Results of actions, with color.
getActionResult :: a -> (String, ColorIntensity, Color)Source
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.
DockerAuthentication | |
SshPubKey SshKeyType UserName | |
SshPrivKey SshKeyType UserName | |
SshAuthorizedKeys UserName | |
Password UserName | |
PrivFile FilePath | |
GpgKey |
Eq PrivDataField | |
Ord PrivDataField | |
Read PrivDataField | |
Show PrivDataField |
Context in which a PrivDataField is used.
Often this will be a domain name. For example, Context www.example.com could be used for the SSL cert for the web server serving that domain. Multiple hosts might use that privdata.
Context String |
Use when a PrivDataField is not dependent on any paricular context.
data SshKeyType Source
Eq SshKeyType | |
Ord SshKeyType | |
Read SshKeyType | |
Show SshKeyType |
module Propellor.Types.OS
module Propellor.Types.Dns