This change adds CI definitions for building the toolkit-container
images. This modifies the existing CI and replaces the build-one
stage with multiple stages that do the following:
* peform the standard golang checks
* build the packages required by the images
* build the images for supported platforms
* releases the images (currently to the CI staging registry)
The build-all stage is included as a final step in the CI. This is
run after the release stage as the target platforms are not requried
from an imaging perspective. The build-all stage is only run on
MRs or tagged builds.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change adds platform-specific Dockerfiles and a Makefile
to build the toolkit-container images.
This image builds the container-config commands from the tools
directory and installs the components of the NVIDIA Container Toolkit
directly from the nvidia-container-toolkit and libnvidia-container*
packages in the dist directory.
This includes make targets for the centos7, centos8, ubuntu18.04,
and ubi8 container-toolkit images as well as the container tests
make targets implemented in the contianer-config repository.
Files adapted from:
383587f766
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change copies the code from container-config/cmd to
tools/container. This allows the code to be built and
added to the container image without additional refactoring.
As the configuration utilities are incorporated into the cmds
of the nvidia-container-toolkit, the code will be moved from tools.
Files copied from:
383587f766
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change allows for upgrade workflows to be tested in the
release test containers. To achieve this a script is added
to configure the test repositories leaving the defaults installed
initially.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change uses the build image directly in CI instead of
using dind and invoking the docker-* make targets.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change updates the git submodules for nvidia-docker and
nvidia-container-runtime to contain the package fixes and
code cleanup.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This change ensures that at least the same libnvidia-container-tools
version is required when installing nvidia-container-toolkit.
Signed-off-by: Evan Lezar <elezar@nvidia.com>
The relationship between packages also considers the package revision
when determining validity. This means that 3.5.0-1 is considered
greater than 3.5.0. This changed adds the package revision to the
nvidia-container-runtime breaks / replaces relationship.
Signed-off-by: Evan Lezar <elezar@nvidia.com>