Issue #11450 has been updated by Daniel Pittman. Status changed from Unreviewed to Needs More Information Assignee set to Daniel Pittman
Stefan Schulte wrote: > Is there a difference between an absent package (never installed or removed) > and a purged package? Because in the described case the yum provider will > return an is-value of :absent. Because the desired value is :purged puppet > treat the resource as not-in-sync so removes the package again. > > The dpkg package provider for example seems to return :purged for a package > that is not installed, so it works on debian. > > I guess we should either > > * return an is value of :purged for an absent package > * modify insync so a value of :absent is treated as insync with a desired > value of :purged If that is the root cause of the problem - and `puppet resource package foo` should tell you what Puppet extracts - then the later is the "right" solution, albeit not necessarily trivial since it needs to vary by provider in matching. Brett, can you confirm by having an `ensure => purged` package on the system, then adding the output of `puppet resource package foo` for it to the ticket? ---------------------------------------- Bug #11450: Package provider improperly managing and logging purged resources https://projects.puppetlabs.com/issues/11450 Author: Brett Lentz Status: Needs More Information Priority: Normal Assignee: Daniel Pittman Category: logging Target version: Affected Puppet version: 2.6.12 Keywords: package purge Branch: I have a package resource that I want to remove, including all of its dependencies. On Red Hat systems, this is done by "yum -y erase <package>". The corresponding puppet code is: package { <package>: ensure => purged } However, puppet prints this into the logs: debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm -q abrt --nosignature --nodigest --qf %{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH} ' debug: Puppet::Type::Package::ProviderYum: Executing '/usr/bin/yum -y erase abrt' notice: /Stage[main]/Global/Package[abrt]/ensure: created The notice is clearly incorrect, as there's nothing that's been created. In fact, it repeatedly prints this notice and runs the "yum erase" command long after the package has *actually* been removed. Both of these behaviors are incorrect. My expectation is: 1. Logged notices for purged resources should not describe anything as being "created". 2. Puppet should only run the "yum erase" command only if the package query ("rpm -q") returns a valid result. -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
