@@ -17,6 +17,8 @@ Source3: nvidia-container-runtime
1717Source4: nvidia-container-runtime.cdi
1818Source5: nvidia-container-runtime.legacy
1919Source6: nvidia-cdi-hook
20+ Source7: nvidia-cdi-refresh.service
21+ Source8: nvidia-cdi-refresh.path
2022
2123Obsoletes: nvidia-container-runtime <= 3.5.0-1, nvidia-container-runtime-hook <= 1.4.0-2
2224Provides: nvidia-container-runtime
@@ -28,23 +30,38 @@ Requires: nvidia-container-toolkit-base == %{version}-%{release}
2830Provides tools and utilities to enable GPU support in containers.
2931
3032%prep
31- cp %{SOURCE0 } %{SOURCE1 } %{SOURCE2 } %{SOURCE3 } %{SOURCE4 } %{SOURCE5 } %{SOURCE6 } .
33+ cp %{SOURCE0 } %{SOURCE1 } %{SOURCE2 } %{SOURCE3 } %{SOURCE4 } %{SOURCE5 } %{SOURCE6 } %{ SOURCE7 } %{ SOURCE8 } .
3234
3335%install
3436mkdir -p %{buildroot }%{_bindir }
37+ mkdir -p %{buildroot }%{_sysconfdir }/systemd/system/
38+
3539install -m 755 -t %{buildroot }%{_bindir } nvidia-container-runtime-hook
3640install -m 755 -t %{buildroot }%{_bindir } nvidia-container-runtime
3741install -m 755 -t %{buildroot }%{_bindir } nvidia-container-runtime.cdi
3842install -m 755 -t %{buildroot }%{_bindir } nvidia-container-runtime.legacy
3943install -m 755 -t %{buildroot }%{_bindir } nvidia-ctk
4044install -m 755 -t %{buildroot }%{_bindir } nvidia-cdi-hook
45+ install -m 644 -t %{buildroot }%{_sysconfdir }/systemd/system nvidia-cdi-refresh.service
46+ install -m 644 -t %{buildroot }%{_sysconfdir }/systemd/system nvidia-cdi-refresh.path
4147
4248%post
4349if [ $1 -gt 1 ]; then # only on package upgrade
4450 mkdir -p %{_localstatedir}/lib/rpm-state/nvidia-container-toolkit
4551 cp -af %{_bindir}/nvidia-container-runtime-hook %{_localstatedir}/lib/rpm-state/nvidia-container-toolkit
4652fi
4753
54+ # Reload systemd unit cache
55+ if command -v systemctl > /dev/null 2> &1 \
56+ && systemctl --quiet is-system-running 2> /dev/null; then
57+ systemctl daemon-reload || true
58+
59+ # On fresh install ($1 == 1) enable the path unit so it starts at boot
60+ if [ "$1" -eq 1 ]; then
61+ systemctl enable --now nvidia-cdi-refresh.path || true
62+ fi
63+ fi
64+
4865%posttrans
4966if [ ! -e %{_bindir}/nvidia-container-runtime-hook ]; then
5067 # repairing lost file nvidia-container-runtime-hook
@@ -89,6 +106,8 @@ Provides tools such as the NVIDIA Container Runtime and NVIDIA Container Toolkit
89106%{_bindir}/nvidia-container-runtime
90107%{_bindir}/nvidia-ctk
91108%{_bindir}/nvidia-cdi-hook
109+ %{_sysconfdir}/systemd/system/nvidia-cdi-refresh.service
110+ %{_sysconfdir}/systemd/system/nvidia-cdi-refresh.path
92111
93112# The OPERATOR EXTENSIONS package consists of components that are required to enable GPU support in Kubernetes.
94113# This package is not distributed as part of the NVIDIA Container Toolkit RPMs.
0 commit comments