stack-3.3.1: The Haskell Tool Stack
Safe HaskellNone
LanguageGHC2021

Stack.Types.Runner

Synopsis

Documentation

data Runner Source #

The base environment that almost everything in Stack runs in, based off of parsing command line options in GlobalOpts. Provides logging, process execution, and the MVar used to ensure that the Docker entrypoint is performed exactly once.

class (HasProcessContext env, HasLogFunc env) => HasRunner env where Source #

Class for environment values which have a Runner.

Methods

runnerL :: Lens' env Runner Source #

class HasRunner env => HasDockerEntrypointMVar env where Source #

Class for environment values which have a Docker entrypoint MVar.

Instances

Instances details
HasDockerEntrypointMVar Runner Source # 
Instance details

Defined in Stack.Types.Runner

stackYamlLocL :: HasRunner env => Lens' env StackYamlLoc Source #

See the stackYaml field of the GlobalOpts data constructor.

lockFileBehaviorL :: HasRunner env => SimpleGetter env LockFileBehavior Source #

See the lockFileBehavior field of the GlobalOpts data constructor.

terminalL :: HasRunner env => Lens' env Bool Source #

See the terminal field of the GlobalOpts data constructor.

reExecL :: HasRunner env => SimpleGetter env Bool Source #

See the reExecVersion field of the GlobalOpts data constructor.

rslInLogL :: HasRunner env => SimpleGetter env Bool Source #

See the rslInLog field of the GlobalOpts data constructor.

progNameL :: HasRunner env => SimpleGetter env String Source #

See the progNameL field of the GlobalOpts data constructor.

mExecutablePathL :: HasRunner env => SimpleGetter env (Maybe (Path Abs File)) Source #

See the mExecutablePath field of the GlobalOpts data constructor.

viewExecutablePath :: HasRunner env => RIO env (Path Abs File) Source #

Yield the path to the current Stack executable, if the operating system provides a reliable way to determine it. Otherwise throw NoExecutablePath.