From f0ea60a28f75dc0aa7204045e45c74c3b70653db Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Thu, 22 May 2025 11:00:46 +0200 Subject: [PATCH] Require matching version of libnvidia-container-tools 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 --- docker/Dockerfile.debian | 5 +---- docker/Dockerfile.opensuse-leap | 4 ---- docker/Dockerfile.rpm-yum | 4 ---- docker/Dockerfile.ubuntu | 7 ++----- docker/docker.mk | 6 ------ packaging/debian/control | 2 +- packaging/debian/prepare | 1 - packaging/rpm/SPECS/nvidia-container-toolkit.spec | 4 ++-- third_party/libnvidia-container | 2 +- 9 files changed, 7 insertions(+), 28 deletions(-) diff --git a/docker/Dockerfile.debian b/docker/Dockerfile.debian index 03f36f84..152ab36f 100644 --- a/docker/Dockerfile.debian +++ b/docker/Dockerfile.debian @@ -57,9 +57,6 @@ WORKDIR $DIST_DIR COPY packaging/debian ./debian COPY deployments/systemd/ . -ARG LIBNVIDIA_CONTAINER_TOOLS_VERSION -ENV LIBNVIDIA_CONTAINER_TOOLS_VERSION ${LIBNVIDIA_CONTAINER_TOOLS_VERSION} - RUN dch --create --package="${PKG_NAME}" \ --newversion "${REVISION}" \ "See https://gitlab.com/nvidia/container-toolkit/container-toolkit/-/blob/${GIT_COMMIT}/CHANGELOG.md for the changelog" && \ @@ -68,6 +65,6 @@ RUN dch --create --package="${PKG_NAME}" \ if [ "$REVISION" != "$(dpkg-parsechangelog --show-field=Version)" ]; then exit 1; fi CMD export DISTRIB="$(lsb_release -cs)" && \ - debuild -eDISTRIB -eSECTION -eLIBNVIDIA_CONTAINER_TOOLS_VERSION -eVERSION="${REVISION}" \ + debuild -eDISTRIB -eSECTION -eVERSION="${REVISION}" \ --dpkg-buildpackage-hook='sh debian/prepare' -i -us -uc -b && \ mv /tmp/*.deb /dist diff --git a/docker/Dockerfile.opensuse-leap b/docker/Dockerfile.opensuse-leap index 354e94f2..600beaeb 100644 --- a/docker/Dockerfile.opensuse-leap +++ b/docker/Dockerfile.opensuse-leap @@ -48,16 +48,12 @@ WORKDIR $DIST_DIR/.. COPY packaging/rpm . COPY deployments/systemd/ . -ARG LIBNVIDIA_CONTAINER_TOOLS_VERSION -ENV LIBNVIDIA_CONTAINER_TOOLS_VERSION ${LIBNVIDIA_CONTAINER_TOOLS_VERSION} - CMD arch=$(uname -m) && \ rpmbuild --clean --target=$arch -bb \ -D "_topdir $PWD" \ -D "release_date $(date +'%a %b %d %Y')" \ -D "git_commit ${GIT_COMMIT}" \ -D "version ${PKG_VERS}" \ - -D "libnvidia_container_tools_version ${LIBNVIDIA_CONTAINER_TOOLS_VERSION}" \ -D "release ${PKG_REV}" \ SPECS/nvidia-container-toolkit.spec && \ mv RPMS/$arch/*.rpm /dist diff --git a/docker/Dockerfile.rpm-yum b/docker/Dockerfile.rpm-yum index ee49b074..464b66af 100644 --- a/docker/Dockerfile.rpm-yum +++ b/docker/Dockerfile.rpm-yum @@ -73,16 +73,12 @@ WORKDIR $DIST_DIR/.. COPY packaging/rpm . COPY deployments/systemd/ ${DIST_DIR}/ -ARG LIBNVIDIA_CONTAINER_TOOLS_VERSION -ENV LIBNVIDIA_CONTAINER_TOOLS_VERSION ${LIBNVIDIA_CONTAINER_TOOLS_VERSION} - CMD arch=$(uname -m) && \ rpmbuild --clean --target=$arch -bb \ -D "_topdir $PWD" \ -D "release_date $(date +'%a %b %d %Y')" \ -D "git_commit ${GIT_COMMIT}" \ -D "version ${PKG_VERS}" \ - -D "libnvidia_container_tools_version ${LIBNVIDIA_CONTAINER_TOOLS_VERSION}" \ -D "release ${PKG_REV}" \ SPECS/nvidia-container-toolkit.spec && \ mv RPMS/$arch/*.rpm /dist diff --git a/docker/Dockerfile.ubuntu b/docker/Dockerfile.ubuntu index af16823c..1d1ba2cd 100644 --- a/docker/Dockerfile.ubuntu +++ b/docker/Dockerfile.ubuntu @@ -55,17 +55,14 @@ WORKDIR $DIST_DIR COPY packaging/debian ./debian COPY deployments/systemd/ . -ARG LIBNVIDIA_CONTAINER_TOOLS_VERSION -ENV LIBNVIDIA_CONTAINER_TOOLS_VERSION ${LIBNVIDIA_CONTAINER_TOOLS_VERSION} - RUN dch --create --package="${PKG_NAME}" \ --newversion "${REVISION}" \ "See https://gitlab.com/nvidia/container-toolkit/container-toolkit/-/blob/${GIT_COMMIT}/CHANGELOG.md for the changelog" && \ - dch --append "Bump libnvidia-container dependency to ${LIBNVIDIA_CONTAINER_TOOLS_VERSION}" && \ + dch --append "Bump libnvidia-container dependency to ${REVISION}" && \ dch -r "" && \ if [ "$REVISION" != "$(dpkg-parsechangelog --show-field=Version)" ]; then exit 1; fi CMD export DISTRIB="$(lsb_release -cs)" && \ - debuild -eDISTRIB -eSECTION -eLIBNVIDIA_CONTAINER_TOOLS_VERSION -eVERSION="${REVISION}" \ + debuild -eDISTRIB -eSECTION -eVERSION="${REVISION}" \ --dpkg-buildpackage-hook='sh debian/prepare' -i -us -uc -b && \ mv /tmp/*.deb /dist diff --git a/docker/docker.mk b/docker/docker.mk index 114f4319..b11796d2 100644 --- a/docker/docker.mk +++ b/docker/docker.mk @@ -85,11 +85,6 @@ docker-all: $(AMD64_TARGETS) $(X86_64_TARGETS) \ --%: docker-build-% @ -LIBNVIDIA_CONTAINER_VERSION ?= $(LIB_VERSION) -LIBNVIDIA_CONTAINER_TAG ?= $(LIB_TAG) - -LIBNVIDIA_CONTAINER_TOOLS_VERSION := $(LIBNVIDIA_CONTAINER_VERSION)$(if $(LIBNVIDIA_CONTAINER_TAG),~$(LIBNVIDIA_CONTAINER_TAG))-1 - # private ubuntu target --ubuntu%: OS := ubuntu @@ -129,7 +124,6 @@ docker-build-%: --build-arg PKG_NAME="$(LIB_NAME)" \ --build-arg PKG_VERS="$(PACKAGE_VERSION)" \ --build-arg PKG_REV="$(PACKAGE_REVISION)" \ - --build-arg LIBNVIDIA_CONTAINER_TOOLS_VERSION="$(LIBNVIDIA_CONTAINER_TOOLS_VERSION)" \ --build-arg GIT_COMMIT="$(GIT_COMMIT)" \ --tag $(BUILDIMAGE) \ --file $(DOCKERFILE) . diff --git a/packaging/debian/control b/packaging/debian/control index 01abcea4..88ad8a9e 100644 --- a/packaging/debian/control +++ b/packaging/debian/control @@ -10,7 +10,7 @@ Build-Depends: debhelper (>= 9) Package: nvidia-container-toolkit Architecture: any -Depends: ${misc:Depends}, nvidia-container-toolkit-base (= @VERSION@), libnvidia-container-tools (>= @LIBNVIDIA_CONTAINER_TOOLS_VERSION@), libnvidia-container-tools (<< 2.0.0) +Depends: ${misc:Depends}, nvidia-container-toolkit-base (= @VERSION@), libnvidia-container-tools (= @VERSION@), libnvidia-container-tools (<< 2.0.0) Breaks: nvidia-container-runtime (<= 3.5.0-1), nvidia-container-runtime-hook Replaces: nvidia-container-runtime (<= 3.5.0-1), nvidia-container-runtime-hook Description: NVIDIA Container toolkit diff --git a/packaging/debian/prepare b/packaging/debian/prepare index 1b15a150..542ff830 100755 --- a/packaging/debian/prepare +++ b/packaging/debian/prepare @@ -3,7 +3,6 @@ set -e sed -i "s;@SECTION@;${SECTION:+$SECTION/};g" debian/control -sed -i "s;@LIBNVIDIA_CONTAINER_TOOLS_VERSION@;${LIBNVIDIA_CONTAINER_TOOLS_VERSION:+$LIBNVIDIA_CONTAINER_TOOLS_VERSION};g" debian/control sed -i "s;@VERSION@;${VERSION:+$VERSION};g" debian/control if [ -n "$DISTRIB" ]; then diff --git a/packaging/rpm/SPECS/nvidia-container-toolkit.spec b/packaging/rpm/SPECS/nvidia-container-toolkit.spec index 4dadd156..a6f14f87 100644 --- a/packaging/rpm/SPECS/nvidia-container-toolkit.spec +++ b/packaging/rpm/SPECS/nvidia-container-toolkit.spec @@ -23,7 +23,7 @@ Source8: nvidia-cdi-refresh.path Obsoletes: nvidia-container-runtime <= 3.5.0-1, nvidia-container-runtime-hook <= 1.4.0-2 Provides: nvidia-container-runtime Provides: nvidia-container-runtime-hook -Requires: libnvidia-container-tools >= %{libnvidia_container_tools_version}, libnvidia-container-tools < 2.0.0 +Requires: libnvidia-container-tools == %{version}-%{release}, libnvidia-container-tools < 2.0.0 Requires: nvidia-container-toolkit-base == %{version}-%{release} %description @@ -86,7 +86,7 @@ fi # As of 1.10.0-1 we generate the release information automatically * %{release_date} NVIDIA CORPORATION %{version}-%{release} - See https://gitlab.com/nvidia/container-toolkit/container-toolkit/-/blob/%{git_commit}/CHANGELOG.md -- Bump libnvidia-container dependency to libnvidia-container-tools >= %{libnvidia_container_tools_version} +- Bump libnvidia-container dependency to libnvidia-container-tools == %{version}-%{release} # The BASE package consists of the NVIDIA Container Runtime and the NVIDIA Container Toolkit CLI. # This allows the package to be installed on systems where no NVIDIA Container CLI is available. diff --git a/third_party/libnvidia-container b/third_party/libnvidia-container index 710a0f13..9d6a23b9 160000 --- a/third_party/libnvidia-container +++ b/third_party/libnvidia-container @@ -1 +1 @@ -Subproject commit 710a0f1304dacb9de06716a4e24160698952aa81 +Subproject commit 9d6a23b99689663e245b802c3eeedcddd658abdd