Safe Haskell | None |
---|---|
Language | Haskell2010 |
A module for easily creating reliable deploy processes for Haskell applications.
- data Config = Config {}
- initialState :: Config -> HapistranoState
- runRC :: ((Int, Maybe String) -> IO a) -> (a -> IO a) -> HapistranoState -> RC a -> IO a
- activateRelease :: RC (Maybe String)
- runBuild :: RC (Maybe String)
- defaultSuccessHandler :: a -> IO ()
- defaultErrorHandler :: (Int, Maybe String) -> IO ()
- pushRelease :: RC (Maybe String)
- restartServerCommand :: RC (Maybe String)
- rollback :: RC (Maybe String)
Documentation
Config stuff that will be replaced by config file reading
Config | |
|
initialState :: Config -> HapistranoState Source
Returns an initial state for the deploy.
:: ((Int, Maybe String) -> IO a) | Error handler |
-> (a -> IO a) | Success handler |
-> HapistranoState | Initial state |
-> RC a | |
-> IO a |
Given a pair of actions, one to perform in case of failure, and one to perform in case of success, run an EitherT and get back a monadic result.
activateRelease :: RC (Maybe String) Source
Switches the current symlink to point to the release specified in the configuration. Maybe used in either deploy or rollback cases.
defaultSuccessHandler :: a -> IO () Source
pushRelease :: RC (Maybe String) Source
Does basic project setup for a project, including making sure some directories exist, and pushing a new release directory with the SHA1 or branch specified in the configuration.
restartServerCommand :: RC (Maybe String) Source