voxpupuli / puppet-dotnet

puppet module for managing Microsoft .NET
https://forge.puppet.com/puppet/dotnet
MIT License
12 stars 26 forks source link

Using powershell as provider to execute package install can cause issues with Mutex #8

Open stevovdb opened 9 years ago

stevovdb commented 9 years ago

I use puppet to deploy a windows server. This requires me to install/update several packages e.g. Internet Explorer 11, a number of hotfixes, dotnet 4.5.1. When using the dotnet module I run into problems with another module due to msi concurrency issues. See info at https://msdn.microsoft.com/en-us/library/aa372909%28v=vs.85%29.aspx The dotnet installer worked, but the other MSI was not installed. Running pupppet again will install the MSI as intended. I also notice that the dotnet installer is still running when my puppet run already finished. If I intended to reboot right after the puppet run, I interrupt the installer. So bottom line it does not seem to be a good idea to start the dotnet install as a separate independent thread/process. Or is there an easy way to create a require dependency to dotnet when the installer finshed completely ? Currently I use require dotnet['dotnet451'] which is fulfilled at the moment the powershell command is executed which is only the install launcher. I would like to have something like dotnet['dotnet451']::done

liamjbennett commented 9 years ago

Actually the module should really depend on the reboot module and manage the reboot itself.

stevovdb commented 9 years ago

But then you would need to know when the dotnet module is fully installed ? Or is there a way to check? I'm quite new with puppet, so maybe I'm missing something and is it possible to check e.g. require dotnet['dotnet451']::done ? Which is only fulfilled when the installer has (successfully) finished ?

jyaworski commented 8 years ago

Hello:

What's the status of this?