stack-0.1.5.0: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Stack.Docker

Description

Run commands in Docker containers

Synopsis

Documentation

cleanup :: M env m => CleanupOpts -> m () Source

Clean-up old docker images and containers.

dockerCleanupCmdName :: String Source

Command-line argument for docker cleanup.

dockerCmdName :: String Source

Command-line argument for "docker"

dockerOptsFromMonoid :: Maybe Project -> Path Abs Dir -> DockerOptsMonoid -> DockerOpts Source

Interprets DockerOptsMonoid options.

dockerPullCmdName :: String Source

Command-line argument for docker pull.

execWithOptionalContainer :: M env m => Maybe (Path Abs Dir) -> IO (FilePath, [String], [(String, String)], Config -> Config) -> Maybe (m ()) -> IO () -> Maybe (m ()) -> Maybe (m ()) -> m () Source

If Docker is enabled, re-runs the OS command returned by the second argument in a Docker container. Otherwise, runs the inner action.

This takes an optional release action just like reexecWithOptionalContainer.

preventInContainer :: (MonadIO m, MonadThrow m) => m () -> m () Source

Error if running in a container.

pull :: M env m => m () Source

Pull latest version of configured Docker image from registry.

reexecWithOptionalContainer :: M env m => Maybe (Path Abs Dir) -> Maybe (m ()) -> IO () -> Maybe (m ()) -> Maybe (m ()) -> m () Source

If Docker is enabled, re-runs the currently running OS command in a Docker container. Otherwise, runs the inner action.

This takes an optional release action which should be taken IFF control is transfering away from the current process to the intra-container one. The main use for this is releasing a lock. After launching reexecution, the host process becomes nothing but an manager for the call into docker and thus may not hold the lock.

reset :: MonadIO m => Maybe (Path Abs Dir) -> Bool -> m () Source

Remove the project's Docker sandbox.

reExecArgName :: String Source

Command-line option for --internal-re-exec.