orangeqs.juice.orchestration.base_image#

Utility for building the Juice base CI image.

Module Contents#

Functions#

render_base_image_files

Render the Containerfile and pyproject.toml for the Juice base CI image.

API#

orangeqs.juice.orchestration.base_image.render_base_image_files(output_dir: pathlib.Path, juice_version: str, *, extra_dependencies: list[str] | None = None) tuple[pathlib.Path, pathlib.Path]#

Render the Containerfile and pyproject.toml for the Juice base CI image.

Loads orchestration settings from the system config and derives base_image, python_version, and system_packages from the singleuser environment. Writes a Containerfile rendered from environment.Containerfile.j2 and a pyproject.toml that pins orangeqs-juice-core[runtime] at juice_version for install from PyPI (no local sources).

Parameters#

  • output_dir:: Directory where the rendered files are written.

  • juice_version:: Exact version of orangeqs-juice-core to install (e.g. "26.24.0").

  • extra_dependencies:: Additional Python package specifiers to bake into the base image alongside juice core (e.g. pre-validated stable packages like "quantify==0.7.0").

Returns#

  • (tuple[Path, Path]): (containerfile_path, pyproject_path)