# cwl_utils.docker_extract

## Functions

`arg_parser`() | Argument parser.
`run`(args) | Extract the docker reqs and download them using Singularity or Docker.
`extract_docker_requirements`(process) | Yield an iterator of the docker reqs, normalizing the pull request.
`extract_docker_reqs`(process) | For the given process, extract the DockerRequirement(s).
`traverse`(process) | Yield the iterator for the docker reqs, including an workflow steps.
`get_process_from_step`(step) | Return the process for this step, loading it if necessary.
`traverse_workflow`(workflow) | Iterate over the steps of this workflow, yielding the docker reqs.
`main`() | Command line entry point.

## Module Contents

cwl_utils.docker_extract.arg_parser()

  Argument parser.

  Return type:

    argparse.ArgumentParser

cwl_utils.docker_extract.run(args)

  Extract the docker reqs and download them using Singularity or Docker.

  Parameters:

    args (argparse.Namespace)

  Return type:

    list[cwl_utils.parser.DockerRequirement]

cwl_utils.docker_extract.extract_docker_requirements(process)

  Yield an iterator of the docker reqs, normalizing the pull request.

  Parameters:

    process (cwl_utils.parser.Process)

  Return type:

    collections.abc.Iterator[cwl_utils.parser.DockerRequirement]

cwl_utils.docker_extract.extract_docker_reqs(process)

  For the given process, extract the DockerRequirement(s).

  Parameters:

    process (cwl_utils.parser.Process)

  Return type:

    collections.abc.Iterator[cwl_utils.parser.DockerRequirement]

cwl_utils.docker_extract.traverse(process)

  Yield the iterator for the docker reqs, including an workflow steps.

  Parameters:

    process (cwl_utils.parser.Process)

  Return type:

    collections.abc.Iterator[cwl_utils.parser.DockerRequirement]

cwl_utils.docker_extract.get_process_from_step(step)

  Return the process for this step, loading it if necessary.

  Parameters:

    step (cwl_utils.parser.WorkflowStep)

  Return type:

    cwl_utils.parser.Process

cwl_utils.docker_extract.traverse_workflow(workflow)

  Iterate over the steps of this workflow, yielding the docker reqs.

  Parameters:

    workflow (cwl_utils.parser.Workflow)

  Return type:

    collections.abc.Iterator[cwl_utils.parser.DockerRequirement]

cwl_utils.docker_extract.main()

  Command line entry point.

  Return type:

    int