diff --git a/cookbooks/aws-parallelcluster-platform/resources/nvidia_driver/nvidia_driver_centos7.rb b/cookbooks/aws-parallelcluster-platform/resources/nvidia_driver/nvidia_driver_centos7.rb index acd9621f40..a7fc54201f 100644 --- a/cookbooks/aws-parallelcluster-platform/resources/nvidia_driver/nvidia_driver_centos7.rb +++ b/cookbooks/aws-parallelcluster-platform/resources/nvidia_driver/nvidia_driver_centos7.rb @@ -21,3 +21,8 @@ def nvidia_driver_enabled? !arm_instance? && nvidia_enabled? end + +# Pinning the Nvidia Driver version for centos7 due to incompatibility with Gdrcopy 2.3.1 +def _nvidia_driver_version + '535.129.03' +end diff --git a/cookbooks/aws-parallelcluster-platform/spec/unit/resources/nvidia_driver_spec.rb b/cookbooks/aws-parallelcluster-platform/spec/unit/resources/nvidia_driver_spec.rb index 7aed15258a..18c781e555 100644 --- a/cookbooks/aws-parallelcluster-platform/spec/unit/resources/nvidia_driver_spec.rb +++ b/cookbooks/aws-parallelcluster-platform/spec/unit/resources/nvidia_driver_spec.rb @@ -163,11 +163,12 @@ def self.setup(chef_run, nvidia_driver_version: nil) [%w(false kernel), %w(true kernel-open)].each do |kernel_open, kernel_module| context "on #{platform}#{version} when nvidia_driver enabled and node['cluster']['nvidia']['kernel_open'] is #{kernel_open}" do - cached(:nvidia_arch) { 'nvidia_arch' } - cached(:nvidia_driver_version) { 'nvidia_driver_version' } - cached(:nvidia_kernel_module) { 'nvidia_kernel_module' } + if platform == 'centos' + cached(:nvidia_driver_version) { '535.129.03' } + else + cached(:nvidia_driver_version) { 'nvidia_driver_version' } + end cached(:nvidia_driver_url) { "https://us.download.nvidia.com/tesla/#{nvidia_driver_version}/NVIDIA-Linux-#{nvidia_arch}-#{nvidia_driver_version}.run" } - cached(:chef_run) do stubs_for_resource('nvidia_driver') do |res| allow(res).to receive(:nvidia_driver_enabled?).and_return(true)