The name release.sh is overloaded. This change renames the script to make the intent clearer. Signed-off-by: Evan Lezar <elezar@nvidia.com> |
||
|---|---|---|
| .. | ||
| docker | ||
| Makefile | ||
| README.md | ||
Testing Packaging Workflows
Building the Docker images:
make images
This assumes that the nvidia-docker workflow is being tested and that the test packages have been published to the elezar.github.io GitHub pages page. These can be overridden
using make variables.
Valid values for workflow are:
nvidia-dockernvidia-container-runtime
This follows the instructions for setting up the nvidia-docker repostitory.
Testing local package changes
Running:
make local-ubuntu18.04
will build the ubuntu18.04-amd64 packages for release and launch a docker container with these packages added to a local APT repository.
The various apt workflows can then be tested as if the packages were released to the libnvidia-container experimental repository.
The local-centos8 make target is available for testing the centos8-x86_64 workflows as representative of yum-based installation workflows.
Example
In the centos8-based container above we see the following nvidia-docker2 packages available with the local-repository disabled:
$ yum list --showduplicates nvidia-docker2 | tail -2
nvidia-docker2.noarch 2.5.0-1 nvidia-docker
nvidia-docker2.noarch 2.6.0-1 nvidia-docker
Installing nvidia-docker2 shows:
$ yum install -y nvidia-docker2
installs the following packages:
$ yum list installed | grep nvidia
libnvidia-container-tools.x86_64 1.5.1-1 @libnvidia-container
libnvidia-container1.x86_64 1.5.1-1 @libnvidia-container
nvidia-container-runtime.x86_64 3.5.0-1 @nvidia-container-runtime
nvidia-container-toolkit.x86_64 1.5.1-2 @nvidia-container-runtime
nvidia-docker2.noarch 2.6.0-1 @nvidia-docker
Note the repositories where these packages were installed from.
We now enable the local-repository to simulate the new packages being published to the libnvidia-container experimental repository and check the available nvidia-docker2 versions:
$ yum-config-manager --enable local-repository
$ yum list --showduplicates nvidia-docker2 | tail -2
nvidia-docker2.noarch 2.6.0-1 nvidia-docker
nvidia-docker2.noarch 2.6.1-0.1.rc.1 local-repository
Showing the new version available in the local repository.
Running:
$ yum install nvidia-docker2
Last metadata expiration check: 0:01:15 ago on Fri Sep 24 12:49:20 2021.
Package nvidia-docker2-2.6.0-1.noarch is already installed.
Dependencies resolved.
===============================================================================================================================
Package Architecture Version Repository Size
===============================================================================================================================
Upgrading:
libnvidia-container-tools x86_64 1.6.0-0.1.rc.1 local-repository 48 k
libnvidia-container1 x86_64 1.6.0-0.1.rc.1 local-repository 95 k
nvidia-container-toolkit x86_64 1.6.0-0.1.rc.1 local-repository 1.5 M
replacing nvidia-container-runtime.x86_64 3.5.0-1
nvidia-docker2 noarch 2.6.1-0.1.rc.1 local-repository 13 k
Transaction Summary
===============================================================================================================================
Upgrade 4 Packages
Total size: 1.7 M
Showing that all the components of the stack will be updated with versions from the local-repository.
After installation the installed packages are shown as:
$ yum list installed | grep nvidia
libnvidia-container-tools.x86_64 1.6.0-0.1.rc.1 @local-repository
libnvidia-container1.x86_64 1.6.0-0.1.rc.1 @local-repository
nvidia-container-toolkit.x86_64 1.6.0-0.1.rc.1 @local-repository
nvidia-docker2.noarch 2.6.1-0.1.rc.1 @local-repository
Showing that:
- All versions have been installed from the same repository
- The
nvidia-container-runtimepackage was removed as it is no longer required.
The nvidia-container-runtime executable is, however, still present on the system:
# ls -l /usr/bin/nvidia-container-runtime
-rwxr-xr-x 1 root root 2256280 Sep 24 12:42 /usr/bin/nvidia-container-runtime