spack.container package

Submodules

spack.container.images module

Manages the details on the images used in the build and the run stage.

spack.container.images.build_info(image, spack_version)

Returns the name of the build image and its tag.

Parameters:
  • image (str) – image to be used at run-time. Should be of the form <image_name>:<image_tag> e.g. “ubuntu:18.04”
  • spack_version (str) – version of Spack that we want to use to build
Returns:

A tuple with (image_name, image_tag) for the build image

spack.container.images.data()

Returns a dictionary with the static data on the images.

The dictionary is read from a JSON file lazily the first time this function is called.

spack.container.images.package_info(image)

Returns the commands used to update system repositories, install system packages and clean afterwards.

Parameters:image (str) – image to be used at run-time. Should be of the form <image_name>:<image_tag> e.g. “ubuntu:18.04”
Returns:A tuple of (update, install, clean) commands.

Module contents

Package that provides functions and classes to generate container recipes from a Spack environment

spack.container.validate(configuration_file)

Validate a Spack environment YAML file that is being used to generate a recipe for a container.

Since a few attributes of the configuration must have specific values for the container recipe, this function returns a sanitized copy of the configuration in the input file. If any modification is needed, a warning will be issued.

Parameters:configuration_file (str) – path to the Spack environment YAML file
Returns:A sanitized copy of the configuration stored in the input file
spack.container.recipe(configuration)

Returns a recipe that conforms to the configuration passed as input.

Parameters:configuration – how to generate the current recipe