diff --git a/training/common/Makefile.common b/training/common/Makefile.common index 4f18861a..195038ff 100644 --- a/training/common/Makefile.common +++ b/training/common/Makefile.common @@ -17,6 +17,7 @@ CONTAINER_TOOL_EXTRA_ARGS ?= EXTRA_RPM_PACKAGES ?= GRAPH_ROOT=$(shell podman info --format '{{ .Store.GraphRoot }}') UMASK=$(shell umask) +IMAGE_VERSION := $(or ${IMAGE_VERSION},$(shell git rev-parse --short HEAD)) AUTH_JSON ?= diff --git a/training/nvidia-bootc/Containerfile b/training/nvidia-bootc/Containerfile index d5ab459c..b0a5665f 100644 --- a/training/nvidia-bootc/Containerfile +++ b/training/nvidia-bootc/Containerfile @@ -102,6 +102,8 @@ COPY --from=builder --chmod=444 /home/builder/yum-packaging-precompiled-kmod/tmp # Temporary workaround until the permanent fix for libdnf is merged COPY nvidia-toolkit-firstboot.service /usr/lib/systemd/system/nvidia-toolkit-firstboot.service +ARG IMAGE_VERSION + # TODO: rework this monstrosity into a build.sh (or even not shell script) # The need for the `cp /etc/dnf/dnf.conf` is a workaround for https://github.com/containers/bootc/issues/637 RUN mv /etc/selinux /etc/selinux.tmp \ @@ -149,6 +151,9 @@ RUN mv /etc/selinux /etc/selinux.tmp \ # Install rhc connect for insights telemetry gathering && . /etc/os-release && if [ "${ID}" == "rhel" ]; then \ dnf install -y rhc rhc-worker-playbook; \ + sed -i -e "/^VARIANT=/ {s/^VARIANT=.*/VARIANT=\"RHEL AI\"/; t}" -e "\$aVARIANT=\"RHEL AI\"\"" /etc/os-release; + sed -i -e "/^VARIANT_ID=/ {s/^VARIANT_ID=.*/VARIANT_ID=rhel_ai/; t}" -e "\$aVARIANT_ID=rhel_ai" /etc/os-release; + sed -i -e "/^BUILD_ID=/ {s/^BUILD_ID=.*/BUILD_ID='${IMAGE_VERSION}'/; t}" -e "\$aBUILD_ID='${IMAGE_VERSION}'" /etc/os-release; fi \ && dnf clean all \ && ln -s ../cloud-init.target /usr/lib/systemd/system/default.target.wants \ diff --git a/training/nvidia-bootc/Makefile b/training/nvidia-bootc/Makefile index 72353df7..57ee8683 100644 --- a/training/nvidia-bootc/Makefile +++ b/training/nvidia-bootc/Makefile @@ -16,6 +16,8 @@ bootc: driver-toolkit check-sshkey prepare-files $(DRIVER_TOOLKIT_IMAGE:%=--build-arg DRIVER_TOOLKIT_IMAGE=%) \ $(DRIVER_VERSION:%=--build-arg DRIVER_VERSION=%) \ $(DRIVER_VERSION:%=--label driver-version=%) \ + $(IMAGE_VERSION:%=--label image_version=%) \ + $(IMAGE_VERSION:%=--build-arg IMAGE_VERSION=%) \ $(EXTRA_RPM_PACKAGES:%=--build-arg EXTRA_RPM_PACKAGES=%) \ $(FROM:%=--build-arg BASEIMAGE=%) \ $(INSTRUCTLAB_IMAGE:%=--build-arg INSTRUCTLAB_IMAGE=%) \