From 4bbe2e92d9859f21ea61ed37b841e1aec8ec93a5 Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Fri, 19 Nov 2021 15:27:54 +0100 Subject: [PATCH 1/4] Bump for post 3.6.0 development Signed-off-by: Evan Lezar --- Makefile | 4 ++-- debian/changelog.old | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 2d87610c..60331672 100644 --- a/Makefile +++ b/Makefile @@ -13,8 +13,8 @@ # limitations under the License. LIB_NAME := nvidia-container-runtime -LIB_VERSION := 3.6.0 -LIB_TAG ?= +LIB_VERSION := 3.7.0 +LIB_TAG ?= rc.1 TOOLKIT_VERSION ?= 1.6.0 TOOLKIT_TAG ?= diff --git a/debian/changelog.old b/debian/changelog.old index deaae0e7..ed658ff4 100644 --- a/debian/changelog.old +++ b/debian/changelog.old @@ -1,3 +1,6 @@ +# Note: as of 3.6.0-1 this file is no longer updated, with a changelog +# entry for a given release generated as part of the packaging step. + nvidia-container-runtime (3.6.0-1) UNRELEASED; urgency=medium * Promote 3.6.0~rc.3-1 to 3.6.0-1 From b2bbdc357de21699050b49545eb4381811f7a18b Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Wed, 24 Nov 2021 10:45:19 +0100 Subject: [PATCH 2/4] Require that TOOLKIT_VERSION be set externally This change removes the default value for TOOLKIT_VERSION and checks that this is set. A warning is also issued if the package TAGS do not match. Signed-off-by: Evan Lezar --- Makefile | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 60331672..0665bb3a 100644 --- a/Makefile +++ b/Makefile @@ -16,8 +16,18 @@ LIB_NAME := nvidia-container-runtime LIB_VERSION := 3.7.0 LIB_TAG ?= rc.1 -TOOLKIT_VERSION ?= 1.6.0 -TOOLKIT_TAG ?= +# Define the nvidia-container-toolkit version on which the nvidia-docker2 +# package depends. It is recommended that the TOOLKIT_TAG and the LIB_TAG match. +TOOLKIT_VERSION ?= # Set by CI +TOOLKIT_TAG ?= # Set by CI + +ifeq ($(strip $(TOOLKIT_VERSION)),) +$(error TOOLKIT_VERSION must be specified) +endif + +ifneq ($(TOOLKIT_TAG),$(LIB_TAG)) +$(warning TOOLKIT_TAG=$(TOOLKIT_TAG) and LIB_TAG=$(LIB_TAG) do not match) +endif # By default run all native docker-based targets docker-native: From 7fe65e42a0b91936c96c49f75a5f0524d8794381 Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Wed, 24 Nov 2021 10:45:56 +0100 Subject: [PATCH 3/4] Specify dummy TOOLKIT_* values in CI Signed-off-by: Evan Lezar --- .gitlab-ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6cdc18c3..8a7ef543 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,6 +4,12 @@ stages: - build-one - build-all +variables: + # We specify the TOOLKIT_VERSION and TOOLKIT_TAG variable to allow packages + # to be built. + TOOLKIT_VERSION: 999.999.999 + TOOLKIT_TAG: dummy + .build-setup: &build-setup image: docker:19.03.8 From 8308065e67343039dc8e3f80f28583b3899b5a51 Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Fri, 19 Nov 2021 15:28:36 +0100 Subject: [PATCH 4/4] Generate rpm changelog entry automatically This change adds a dummy entry that can be updated automatically to the rpm changelog. The existing changelog is moved to a changelog.old file. Signed-off-by: Evan Lezar --- docker/Dockerfile.amazonlinux | 1 + docker/Dockerfile.centos | 1 + docker/Dockerfile.opensuse-leap | 1 + rpm/SPECS/nvidia-container-runtime.spec | 48 ++----------------------- rpm/changelog.old | 46 ++++++++++++++++++++++++ 5 files changed, 52 insertions(+), 45 deletions(-) create mode 100644 rpm/changelog.old diff --git a/docker/Dockerfile.amazonlinux b/docker/Dockerfile.amazonlinux index 37c4e6b7..36bb554f 100644 --- a/docker/Dockerfile.amazonlinux +++ b/docker/Dockerfile.amazonlinux @@ -32,6 +32,7 @@ COPY rpm . CMD arch=$(uname -m) && \ rpmbuild --clean -bb \ -D "_topdir $PWD" \ + -D "release_date $(date +'%a %b %d %Y')" \ -D "version $VERSION" \ -D "release $RELEASE" \ -D "toolkit_version $TOOLKIT_VERSION" \ diff --git a/docker/Dockerfile.centos b/docker/Dockerfile.centos index b0af0a91..c899c622 100644 --- a/docker/Dockerfile.centos +++ b/docker/Dockerfile.centos @@ -30,6 +30,7 @@ COPY rpm . CMD arch=$(uname -m) && \ rpmbuild --clean -bb \ -D "_topdir $PWD" \ + -D "release_date $(date +'%a %b %d %Y')" \ -D "version $VERSION" \ -D "release $RELEASE" \ -D "toolkit_version $TOOLKIT_VERSION" \ diff --git a/docker/Dockerfile.opensuse-leap b/docker/Dockerfile.opensuse-leap index eeb7b334..5b6a73c6 100644 --- a/docker/Dockerfile.opensuse-leap +++ b/docker/Dockerfile.opensuse-leap @@ -32,6 +32,7 @@ COPY rpm . CMD arch=$(uname -m) && \ rpmbuild --clean -bb \ -D "_topdir $PWD" \ + -D "release_date $(date +'%a %b %d %Y')" \ -D "version $VERSION" \ -D "release $RELEASE" \ -D "toolkit_version $TOOLKIT_VERSION" \ diff --git a/rpm/SPECS/nvidia-container-runtime.spec b/rpm/SPECS/nvidia-container-runtime.spec index 8b976921..8c31726a 100644 --- a/rpm/SPECS/nvidia-container-runtime.spec +++ b/rpm/SPECS/nvidia-container-runtime.spec @@ -30,49 +30,7 @@ cp %{SOURCE0} . %license LICENSE %changelog -* Wed Nov 17 2021 NVIDIA CORPORATION 3.6.0-1 -- Promote 3.6.0-0.1.rc.3 to 3.6.0-1 - -* Mon Nov 08 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.3 -- Convert to noarch package - -* Thu Nov 04 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.2 +# As of 3.6.0-1 we generate the release information automatically +* %{release_date} NVIDIA CORPORATION %{version}-%{release} +- As of 3.6.0-1 the package changelog is generated automatically. This means that releases since 3.6.0-1 all contain this same changelog entry updated for the version being released. - Bump nvidia-container-toolkit dependency to %{toolkit_version} -- Allow the toolkit version to be specified as a variable - -* Thu Apr 29 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.1 -- Add AARCH64 package for Amazon Linux 2 -- [BUILD] Allow tag to be specified instead of revision -- Convert to meta package that depends on nvidia-container-toolkit -- Remove libseccomp2 dependency - -* Thu Apr 29 2021 NVIDIA CORPORATION 3.5.0-1 -- Add dependence on nvidia-container-toolkit >= 1.5.0 -- Refactor the whole project for easier extensibility in the future -- Move main to cmd/nvidia-container-runtime to make it go-installable -- Switch to logrus for logging and refactor how logging is done -- Update to Golang 1.16.3 -- Improvements to build and CI system -- Reorganize the code structure and format it correctly - -* Fri Feb 05 2021 NVIDIA CORPORATION 3.4.2-1 -- Add dependence on nvidia-container-toolkit >= 1.4.2 - -* Mon Jan 25 2021 NVIDIA CORPORATION 3.4.1-1 -- Update README to list 'compute' as part of the default capabilities -- Switch to gomod for vendoring -- Update to Go 1.15.6 for builds -- Add dependence on nvidia-container-toolkit >= 1.4.1 - -* Wed Sep 16 2020 NVIDIA CORPORATION 3.4.0-1 -- Bump version to v3.4.0 -- Add dependence on nvidia-container-toolkit >= 1.3.0 - -* Wed Jul 08 2020 NVIDIA CORPORATION 3.3.0-1 -- e550cb15 Update package license to match source license -- f02eef53 Update project License -- c0fe8aae Update dependence on nvidia-container-toolkit to 1.2.0 - -* Fri May 15 2020 NVIDIA CORPORATION 3.2.0-1 -- e486a70e Update build system to support multi-arch builds -- 854f4c48 Require new MIG changes diff --git a/rpm/changelog.old b/rpm/changelog.old new file mode 100644 index 00000000..15a73bb1 --- /dev/null +++ b/rpm/changelog.old @@ -0,0 +1,46 @@ +* Wed Nov 17 2021 NVIDIA CORPORATION 3.6.0-1 +- Promote 3.6.0-0.1.rc.3 to 3.6.0-1 + +* Mon Nov 08 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.3 +- Convert to noarch package + +* Thu Nov 04 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.2 +- Bump nvidia-container-toolkit dependency to %{toolkit_version} +- Allow the toolkit version to be specified as a variable + +* Thu Apr 29 2021 NVIDIA CORPORATION 3.6.0-0.1.rc.1 +- Add AARCH64 package for Amazon Linux 2 +- [BUILD] Allow tag to be specified instead of revision +- Convert to meta package that depends on nvidia-container-toolkit +- Remove libseccomp2 dependency + +* Thu Apr 29 2021 NVIDIA CORPORATION 3.5.0-1 +- Add dependence on nvidia-container-toolkit >= 1.5.0 +- Refactor the whole project for easier extensibility in the future +- Move main to cmd/nvidia-container-runtime to make it go-installable +- Switch to logrus for logging and refactor how logging is done +- Update to Golang 1.16.3 +- Improvements to build and CI system +- Reorganize the code structure and format it correctly + +* Fri Feb 05 2021 NVIDIA CORPORATION 3.4.2-1 +- Add dependence on nvidia-container-toolkit >= 1.4.2 + +* Mon Jan 25 2021 NVIDIA CORPORATION 3.4.1-1 +- Update README to list 'compute' as part of the default capabilities +- Switch to gomod for vendoring +- Update to Go 1.15.6 for builds +- Add dependence on nvidia-container-toolkit >= 1.4.1 + +* Wed Sep 16 2020 NVIDIA CORPORATION 3.4.0-1 +- Bump version to v3.4.0 +- Add dependence on nvidia-container-toolkit >= 1.3.0 + +* Wed Jul 08 2020 NVIDIA CORPORATION 3.3.0-1 +- e550cb15 Update package license to match source license +- f02eef53 Update project License +- c0fe8aae Update dependence on nvidia-container-toolkit to 1.2.0 + +* Fri May 15 2020 NVIDIA CORPORATION 3.2.0-1 +- e486a70e Update build system to support multi-arch builds +- 854f4c48 Require new MIG changes \ No newline at end of file