This change adds a create-soname-symlinks hook that can be used to ensure
that the soname symlinks for injected libraries exist in a container.
This is done by calling ldconfig -n -N for the directories containing the injected
libraries.
This also ensures that libcuda.so is present in the ldcache when the update-ldcache
hook is run.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Since the nvidia-container-tools and libnvidia-container* packages
are now released at the same time with the same version, a more
restrictive version makes sense. Here we specifically require an
equal version for the nvidia-container-toolkit* packages and the
libnvidia-container* packages.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change adds an NVIDIA_CTK_LIBCUDA_DIR envvar to
a generated CDI specification. This reports where the `libcuda.so.*`
libraries will be injected into the container.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change ensures that a symlink from /work/nvidia-toolkit to
/work/nvidia-ctk-installer exists to allow GPU Operator versions
that override the entrypoint and assume nvidia-toolkit as the
original entrypoint.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change removes the NGC-DL-CONTAINER-LICENSE (since this
is not available in the distroless images) and includes the
repo's Apache LICENSE file in the image.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change adds support for explicitly specifying the path
to the config file through an environment variable.
The NVIDIA_CTK_CONFIG_FILE_PATH variable is used for both the nvidia-container-runtime
and nvidia-container-runtime-hook.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
We now release all images with vX.Y.Z and vX.Y.Z-packaging tags.
This change updates the gitlab CI to allow for this.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
The gated modifiers used to add support for GDS, Mofed, and CUDA Forward Comatibility
only check the NVIDIA_VISIBLE_DEVICES envvar to determine whether GPUs are requested
and modifications should be made. This means that use cases where volume mounts are
used to request devices are not supported.
This change ensures that device extraction is consistent for all use cases.
Signed-off-by: Carlos Eduardo Arango Gutierrez <eduardoa@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change swithces to using a single image for the NVIDIA Container Toolkit contianer.
Here the contents of the architecture-specific deb and rpm packages are extracted
to a known root. These contents can then be installed using the updated installation
mechanism which has been updated to detect the source root based on the packaging type.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change removes docker-runc as the highest priority
default candidate for the low-level runtimes supported by
the nvidia-container-runtime.
Signed-off-by: Evan Lezar <elezar@nvidia.com>