| Safe Haskell | None |
|---|
Propellor
Description
Pulls in lots of useful modules for building and using Properties.
Propellor enures that the system it's run in satisfies a list of properties, taking action as necessary when a property is not yet met.
A simple propellor program example:
import Propellor
import Propellor.CmdLine
import qualified Propellor.Property.File as File
import qualified Propellor.Property.Apt as Apt
main :: IO ()
main = defaultMain getProperties
getProperties :: HostName -> Maybe [Property]
getProperties "example.com" = Just
[ Apt.installed ["mydaemon"]
, "/etc/mydaemon.conf" `File.containsLine` "secure=1"
`onChange` cmdProperty "service" ["mydaemon", "restart"]
]
getProperties _ = Nothing
See config.hs for a more complete example, and clone Propellor's git repository for a deployable system using Propellor: git clone git://git.kitenet.net/propellor
- module Propellor.Types
- module Propellor.Property
- module Propellor.Property.Cmd
- module Propellor.PrivData
- module Propellor.Engine
- module Propellor.Message
- localdir :: FilePath
Documentation
module Propellor.Types
module Propellor.Property
module Propellor.Property.Cmd
module Propellor.PrivData
module Propellor.Engine
module Propellor.Message