handsy-0.0.9: A DSL to describe common shell operations and interpeters for running them locally and remotely.

Safe HaskellNone
LanguageHaskell2010

System.Handsy.Core

Synopsis

Documentation

type Handsy = FreeT HandsyF IO Source

Main monad

interpret Source

Arguments

:: IO r

Acquire resource

-> (r -> IO ())

Release resource

-> (r -> String -> [String] -> ByteString -> IO (ExitCode, ByteString, ByteString))

readProcessWithExitCode + resource

-> Options 
-> Handsy a 
-> IO a 

interpretSimple Source

Arguments

:: (String -> [String] -> ByteString -> IO (ExitCode, ByteString, ByteString))

readProcessWithExitCode

-> Options 
-> Handsy a 
-> IO a 

command :: forall m. MonadFree HandsyF m => FilePath -> [String] -> ByteString -> m (ExitCode, ByteString, ByteString) Source

data Options Source

Constructors

Options 

Fields

debug :: Bool

Log commands to stderr before running

options :: Options Source

Default options