On 2011-11-22 07:10 , Mohamed Lrhazi wrote: > I noticed that is if I uninstall an MSI that was installed by Puppet, > Puppet does not notice. > > Looking at the source I see it might be checking for a state file to > know whether a package is installed or not: > C:\ProgramData\PuppetLabs\puppet\var\db\package\msi\SplunkForwarder.yml > > So one has to rememebr to delete that too.... Is this design not a problem? > > Thanks, > Mohamed. >
It's certainly a limitation, and not ideal. This is currently how the appdmg provider behaves on OS X, so it's not entirely unexpected behavior (for people that are used to how Puppet works on systems without centralized package management systems). An alternative would be to create a parameter along the lines of exec's 'creates' where you would need to specify a file that would only exist iff the 'package' had been successfully installed. When we were investigating things initially I believe that the reason we had to rule out things like checking the registry was that there were too many ways for an installer to misbehave that would break any of the detection that we would need to do. I don't know whether or not a 'creates' parameter would end up being more problematic or not, but I certainly welcome discussion from people who are actually doing real systems management using Puppet on Windows. -- Jacob Helwig http://about.me/jhelwig
signature.asc
Description: OpenPGP digital signature