funflow-2.0.0: Make composable workflows
Safe HaskellNone
LanguageHaskell2010

Funflow.Tasks.Docker

Description

Run commands using Docker

Synopsis

Documentation

data DockerTaskConfig Source #

Configure what task to run in Docker

Constructors

DockerTaskConfig 

Fields

  • image :: Text

    The name of the docker image

  • command :: Text

    The command to run

  • args :: [Arg]

    The arguments to pass to the command run inside of the container

data DockerTask i o where Source #

Instances

Instances details
IsFlow DockerTask Source # 
Instance details

Defined in Funflow.Flow

Methods

toFlow :: DockerTask i o -> Flow i o Source #

data DockerTaskInput Source #

Input to a Docker task to finalize its configuration

Constructors

DockerTaskInput 

Fields

Instances

Instances details
Eq DockerTaskInput Source # 
Instance details

Defined in Funflow.Tasks.Docker

Show DockerTaskInput Source # 
Instance details

Defined in Funflow.Tasks.Docker

Semigroup DockerTaskInput Source #

Combine task inputs by combining the collections they contain.

This treats inputBindings as a "priority list"-like structure in case of repeat occurrence of the same mount path. Specifically, the item associated with a particular path will be the first one, left-to-right, from the inputBindings being combined. Analogous for argsVals, in accordance with ordinary Semigroup Map.

Instance details

Defined in Funflow.Tasks.Docker

Monoid DockerTaskInput Source #

An empty task input is one with fields of empty collections.

Instance details

Defined in Funflow.Tasks.Docker

data VolumeBinding Source #

Represent how to bind a directory from cas-store (CS.Item) to a container internal file system

Constructors

VolumeBinding 

Fields

data Arg Source #

Represent an argument to pass to the command run inside of a Docker container

Constructors

Arg (Configurable Text)

Raw text argument

Placeholder String

A placeholder for an argument to be passed as runtime input to the task (filled by argsVals)

Instances

Instances details
IsString Arg Source # 
Instance details

Defined in Funflow.Tasks.Docker

Methods

fromString :: String -> Arg #

renderArg :: ExternalConfig -> Arg -> Either String Arg Source #

Renders an Arg with external configurations

getIdFromArg :: Arg -> Maybe ConfigKeysBySource Source #

Extracts a ConfigKey from an Arg, if it exists.