Check to see if an nVidia module already exists for the current kernel and if not build
if [ ! -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then ----- Original Message ----- | Hello all, | I'd like to use puppet to install an Nvidia driver on a local | workstation. I've written the following manifest for this puprpose: | class nvidia_driver { | # This will place the nvidia installer locally in /tmp. File is | pulled from puppet. | file { "/tmp/NVIDIA-Linux-x86_64-295.53.run" : | source => | "puppet:///modules/nvidia_driver/NVIDIA-Linux-x86_64-295.53.run" , | ensure => present , | } | # This will run the nvidia installer locally on the machine. | exec { "/tmp/NVIDIA-Linux-x86_64-295.53.run -s -X --opengl-headers | --no-distro-scripts --force-tls-compat32=new" : } | } | Upon the initial run of the manifest on the target machine, | everything works great (although I do believe there is some room for | improvement of the code above; particularly on the exec portion) and | the driver then gets installed. The issue occurs on subsequent | puppet runs on the same machine and I'm getting the following error | during my second puppet run from the client: | err: | /Stage[main]/Nvidia_driver/Exec[/tmp/NVIDIA-Linux-x86_64-295.53.run | -s -X --opengl-headers --no-distro-scripts | --force-tls-compat32=new]/returns: change from notrun to 0 failed: | /tmp/NVIDIA-Linux-x86_64-295.53.run -s -X --opengl-headers | --no-distro-scripts --force-tls-compat32=new returned 1 instead of | one of [0] at /etc/puppet/modules/nvidia_driver/manifests/init.pp:12 | It appears to me that the above error is occurring because the | nvidia_driver class is running on each subsequent run and since the | driver is already installed, I'm getting an exit status of 1 instead | of 0, which to my knowledge would be expected. | So, what I'd like to do is put some sort of condition that will look | to see if the driver is installed and if it is, the class | "nvidia_driver" won't run. I'm having a hard time figuring this one | out and I was hoping to get a few opinions on how this might be | accomplished. | Would this potentially be a job for a shell script that does the | checking? Maybe just adding the shell script into the | "nvidia_driver" manifest? | Thanks in advance for everybody's assistance and the help is very | much appreciated. | Cheers, | Mike | -- | You received this message because you are subscribed to the Google | Groups "Puppet Users" group. | To view this discussion on the web visit | https://groups.google.com/d/msg/puppet-users/-/R9ngLgt78tMJ . | To post to this group, send email to puppet-users@googlegroups.com. | To unsubscribe from this group, send email to | puppet-users+unsubscr...@googlegroups.com. | For more options, visit this group at | http://groups.google.com/group/puppet-users?hl=en. -- James A. Peltier Manager, IT Services - Research Computing Group Simon Fraser University - Burnaby Campus Phone : 778-782-6573 Fax : 778-782-3045 E-Mail : jpelt...@sfu.ca Website : http://www.sfu.ca/itservices http://blogs.sfu.ca/people/jpeltier Success is to be measured not so much by the position that one has reached in life but as by the obstacles they have overcome. - Booker T. Washington -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.