summaryrefslogtreecommitdiff
path: root/src/Propellor/Exception.hs
diff options
context:
space:
mode:
authorJoey Hess2016-06-13 18:56:52 -0400
committerJoey Hess2016-06-13 18:56:52 -0400
commit490249b919aaf82527b81c88c88350fd478dbed9 (patch)
tree1d136bb0f71bac53bdd64248bc9ab1387ee10b4b /src/Propellor/Exception.hs
parentb75ee60844fc56d361c5fac5a1038eebd33f26ba (diff)
add stopPropellorMessage
Diffstat (limited to 'src/Propellor/Exception.hs')
-rw-r--r--src/Propellor/Exception.hs19
1 files changed, 1 insertions, 18 deletions
diff --git a/src/Propellor/Exception.hs b/src/Propellor/Exception.hs
index 2f9b1684..3ab783bf 100644
--- a/src/Propellor/Exception.hs
+++ b/src/Propellor/Exception.hs
@@ -3,30 +3,13 @@
module Propellor.Exception where
import Propellor.Types
+import Propellor.Types.Exception
import Propellor.Message
import Utility.Exception
import Control.Exception (AsyncException)
import Control.Monad.Catch
import Control.Monad.IO.Class (MonadIO)
-import Data.Typeable
-
--- | Normally when an exception is encountered while propellor is
--- ensuring a property, the property fails, but propellor robustly
--- continues on to the next property.
---
--- This is the only exception that will stop the entire propellor run,
--- preventing any subsequent properties of the Host from being ensured.
--- (When propellor is running in a container in a Host, this exception only
--- stops the propellor run in the container; the outer run in the Host
--- continues.)
---
--- You should only throw this exception when things are so badly messed up
--- that it's best for propellor to not try to do anything else.
-data StopPropellorException = StopPropellorException String
- deriving (Show, Typeable)
-
-instance Exception StopPropellorException
-- | Catches all exceptions (except for `StopPropellorException` and
-- `AsyncException`) and returns FailedChange.