Skip to content

Commit

Permalink
Kit changes for Nvidia settings APIs
Browse files Browse the repository at this point in the history
Signed-off-by: Monirul Islam <[email protected]>
  • Loading branch information
monirul committed Jul 31, 2024
1 parent 733f865 commit db48620
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[required-extensions]
nvidia-container-runtime = "v1"
std = { version = "v1", helpers = ["default"] }

+++
### generated from the template file ###
accept-nvidia-visible-devices-as-volume-mounts = {{default true settings.nvidia-container-runtime.visible-devices-as-volume-mounts}}
accept-nvidia-visible-devices-envvar-when-unprivileged = {{default false settings.nvidia-container-runtime.visible-devices-envvar-when-unprivileged}}

[nvidia-container-cli]
root = "/"
path = "/usr/bin/nvidia-container-cli"
environment = []
ldconfig = "@/sbin/ldconfig"
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Source3: nvidia-oci-hooks-json
Source4: nvidia-gpu-devices.rules
Source5: nvidia-container-toolkit-tmpfiles-ecs.conf
Source6: nvidia-container-toolkit-tmpfiles-k8s.conf
Source7: nvidia-container-toolkit-config-k8s

BuildRequires: %{_cross_os}glibc-devel
Requires: %{_cross_os}libnvidia-container
Expand Down Expand Up @@ -59,13 +60,16 @@ install -d %{buildroot}%{_cross_templatedir}
install -d %{buildroot}%{_cross_udevrulesdir}
install -d %{buildroot}%{_cross_datadir}/nvidia-container-toolkit
install -d %{buildroot}%{_cross_factorydir}/nvidia-container-runtime
install -d %{buildroot}%{_cross_templatedir}/nvidia-container-runtime
install -p -m 0755 nvidia-container-runtime-hook %{buildroot}%{_cross_bindir}/
install -p -m 0755 nvidia-ctk %{buildroot}%{_cross_bindir}/
install -m 0644 %{S:1} %{S:2} %{buildroot}%{_cross_factorydir}/nvidia-container-runtime/
install -m 0644 %{S:1} %{buildroot}%{_cross_factorydir}/nvidia-container-runtime/
install -m 0644 %{S:2} %{buildroot}%{_cross_factorydir}/nvidia-container-runtime/
install -m 0644 %{S:3} %{buildroot}%{_cross_templatedir}/nvidia-oci-hooks-json
install -p -m 0644 %{S:4} %{buildroot}%{_cross_udevrulesdir}/90-nvidia-gpu-devices.rules
install -m 0644 %{S:5} %{buildroot}%{_cross_tmpfilesdir}/nvidia-container-toolkit-ecs.conf
install -m 0644 %{S:6} %{buildroot}%{_cross_tmpfilesdir}/nvidia-container-toolkit-k8s.conf
install -m 0644 %{S:7} %{buildroot}%{_cross_templatedir}/nvidia-container-runtime/
ln -s shimpei %{buildroot}%{_cross_bindir}/nvidia-oci

%files
Expand All @@ -83,4 +87,5 @@ ln -s shimpei %{buildroot}%{_cross_bindir}/nvidia-oci

%files k8s
%{_cross_factorydir}/nvidia-container-runtime/nvidia-container-toolkit-config-k8s.toml
%{_cross_templatedir}/nvidia-container-runtime/nvidia-container-toolkit-config-k8s
%{_cross_tmpfilesdir}/nvidia-container-toolkit-k8s.conf
13 changes: 13 additions & 0 deletions packages/nvidia-k8s-device-plugin/nvidia-k8s-device-plugin-conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[required-extensions]
kubernetes = "v1"
std = { version = "v1", helpers = ["default"] }

+++
version: v1
flags:
migStrategy: "none"
failOnInitError: true
plugin:
passDeviceSpecs: {{default true settings.kubernetes.device-plugins.nvidia.pass-device-specs}}
deviceListStrategy: {{default "volume-mounts" settings.kubernetes.device-plugins.nvidia.device-list-strategy}}
deviceIDStrategy: {{default "index" settings.kubernetes.device-plugins.nvidia.device-id-strategy}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[required-extensions]
kubernetes = "v1"
+++
[Service]
{{#if settings.kubernetes.device-plugins.nvidia}}
ExecStart=
ExecStart=/usr/bin/nvidia-device-plugin --config-file=/etc/nvidia-k8s-device-plugin/settings.yaml
{{/if}}
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
[Unit]
Description=Start NVIDIA kubernetes device plugin
RefuseManualStart=true
RefuseManualStop=true
After=kubelet.service
Wants=kubelet.service

Expand Down
10 changes: 10 additions & 0 deletions packages/nvidia-k8s-device-plugin/nvidia-k8s-device-plugin.spec
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ License: Apache-2.0
URL: https://github.com/NVIDIA/k8s-device-plugin
Source0: https://%{goimport}/archive/v%{gover}/v%{gover}.tar.gz#/k8s-device-plugin-%{gover}.tar.gz
Source1: nvidia-k8s-device-plugin.service
Source2: nvidia-k8s-device-plugin-conf
Source3: nvidia-k8s-device-plugin-exec-start-conf


BuildRequires: %{_cross_os}glibc-devel
Requires: %{name}(binaries)
Expand Down Expand Up @@ -61,11 +64,18 @@ install -p -m 0755 fips/nvidia-device-plugin %{buildroot}%{_cross_fips_bindir}

install -d %{buildroot}%{_cross_unitdir}
install -p -m 0644 %{S:1} %{buildroot}%{_cross_unitdir}
install -d %{buildroot}%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d
install -D -m 0644 %{S:2} %{buildroot}%{_cross_templatedir}/nvidia-k8s-device-plugin-conf
install -D -m 0644 %{S:3} %{buildroot}%{_cross_templatedir}/nvidia-k8s-device-plugin-exec-start-conf


%files
%license LICENSE
%{_cross_attribution_file}
%{_cross_unitdir}/nvidia-k8s-device-plugin.service
%dir %{_cross_unitdir}/nvidia-k8s-device-plugin.service.d
%{_cross_templatedir}/nvidia-k8s-device-plugin-conf
%{_cross_templatedir}/nvidia-k8s-device-plugin-exec-start-conf

%files bin
%{_cross_bindir}/nvidia-device-plugin
Expand Down

0 comments on commit db48620

Please sign in to comment.