cwl_utils.image_puller

Classes for docker-extract.

Classes

ImagePuller

Helper class that provides a standard way to create an ABC using

DockerImagePuller

Pull docker image with Docker.

SingularityImagePuller

Pull docker image with Singularity.

Module Contents

class cwl_utils.image_puller.ImagePuller(req, save_directory, cmd, force_pull)

Bases: abc.ABC

digraph inheritance0c9700e4fd { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",tooltip="Helper class that provides a standard way to create an ABC using"]; "ImagePuller" [URL="#cwl_utils.image_puller.ImagePuller",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "ABC" -> "ImagePuller" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Helper class that provides a standard way to create an ABC using inheritance.

Parameters:
  • req (str)

  • save_directory (str | pathlib.Path | None)

  • cmd (str)

  • force_pull (bool)

req
save_directory
cmd
force_pull
abstractmethod get_image_name()

Get the engine-specific image name.

Return type:

str

abstractmethod save_docker_image()

Download and save the image to disk.

Return type:

None

class cwl_utils.image_puller.DockerImagePuller(req, save_directory, cmd, force_pull)

Bases: ImagePuller

digraph inheritance1081dc94b8 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",tooltip="Helper class that provides a standard way to create an ABC using"]; "DockerImagePuller" [URL="#cwl_utils.image_puller.DockerImagePuller",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Pull docker image with Docker."]; "ImagePuller" -> "DockerImagePuller" [arrowsize=0.5,style="setlinewidth(0.5)"]; "ImagePuller" [URL="#cwl_utils.image_puller.ImagePuller",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "ABC" -> "ImagePuller" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Pull docker image with Docker.

Parameters:
  • req (str)

  • save_directory (str | pathlib.Path | None)

  • cmd (str)

  • force_pull (bool)

get_image_name()

Get the name of the tarball.

Return type:

str

generate_udocker_loading_command()

Generate the udocker loading command.

Return type:

str

save_docker_image()

Download and save the software container image to disk as a docker tarball.

Return type:

None

class cwl_utils.image_puller.SingularityImagePuller(req, save_directory, cmd, force_pull)

Bases: ImagePuller

digraph inheritance4f3cb8b1f8 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",tooltip="Helper class that provides a standard way to create an ABC using"]; "ImagePuller" [URL="#cwl_utils.image_puller.ImagePuller",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"]; "ABC" -> "ImagePuller" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SingularityImagePuller" [URL="#cwl_utils.image_puller.SingularityImagePuller",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Pull docker image with Singularity."]; "ImagePuller" -> "SingularityImagePuller" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

Pull docker image with Singularity.

Parameters:
  • req (str)

  • save_directory (str | pathlib.Path | None)

  • cmd (str)

  • force_pull (bool)

CHARS_TO_REPLACE = ['/', ':']
NEW_CHAR = '_'
get_image_name()

Determine the file name appropriate to the installed version of Singularity.

Return type:

str

save_docker_image()

Pull down the Docker software container image and save it in the Singularity image format.

Return type:

None