nvidia-container-toolkit/DEVELOPMENT.md
Evan Lezar 6709da4cea Rename release.sh to build-packages.sh
The name release.sh is overloaded. This change renames the script to make the
intent clearer.

Signed-off-by: Evan Lezar <elezar@nvidia.com>
2022-04-13 12:14:51 +02:00

1.6 KiB

NVIDIA Container Toolkit Release Tooling

This repository allows for the components of the NVIDIA container stack to be built and released as the NVIDIA Container Toolkit from a single repository. The components:

  • libnvidia-container
  • nvidia-container-runtime
  • nvidia-docker are included as submodules in the third_party folder.

The nvidia-container-toolkit resides in this repo directly.

Building

In oder to build the packages, the following command is executed

./scripts/build-packages.sh TARGET

where TARGET is a make target that is valid for each of the sub-components.

These include:

  • ubuntu18.04-amd64
  • centos8-x86_64

If no TARGET is specified, all valid release targets are built.

The packages are generated in the dist folder.

Testing local changes

In oder to use the same build logic to be used to generate packages with local changes, the location of the individual components can be overridded using the: LIBNVIDIA_CONTAINER_ROOT, NVIDIA_CONTAINER_TOOLKIT_ROOT, NVIDIA_CONTAINER_RUNTIME_ROOT, and NVIDIA_DOCKER_ROOT environment variables.

Testing packages locally

The test/release folder contains documentation on how the installation of local or staged packages can be tested.

Releasing

A utility script scripts/release.sh is provided to build packages required for release. If run without arguments, all supported distribution-architecture combinations are built. A specific distribution-architecture pair can also be provided

./scripts/release.sh ubuntu18.04-amd64

where the amd64 builds for ubuntu18.04 are provided as an example.