Issue #20679 has been updated by Charlie Sharpsteen. Status changed from Unreviewed to Needs Decision Assignee set to eric sorenson
Looks like `--noop` was intentionally changed between 0.24.2 and 0.24.3 in [ecb873d](https://github.com/puppetlabs/puppet/commit/ecb873d) to allow local overrides from resources. This was done in response to #1118 so that Puppet could still execute catalogs for pluginsync in the presence of `--noop`. I do agree that this breaks noop guarantees for any set of manifests that is programmatically setting noop as part of normal operations and leaves users with no way to put those manifests into simulation mode. Eric, this needs a decision as to what the "correct" behavior should be. ---------------------------------------- Bug #20679: puppet agent --noop command line option does not guarantee a fully dry run https://projects.puppetlabs.com/issues/20679#change-90980 * Author: Nick Moriarty * Status: Needs Decision * Priority: High * Assignee: eric sorenson * Category: agent * Target version: * Affected Puppet version: 2.7.11 * Keywords: noop simulation dry-run dryrun simulate test * Branch: ---------------------------------------- According to some documentation (including man pages), and common sense, specifying --noop should cause Puppet agent to run in 'dry-run' mode, and make no changes. However, it seems that this actually just changes the global resource default for 'noop' to true. If a resource is defined which determines noop itself (for example, based on a parameter), this will escape what would reasonably be expected to be a simulation run, as it will override the global noop with 'false'. I noticed this while testing a development branch and noting that it actually affected a file mode somewhere. If not implemented via the 'noop' mechanism, a proper simulation mode should be provided which will show exactly what will happen, but with the guarantee that nothing will be done. The current --noop flag certainly doesn't provide that guarantee. This issue may cause us to internally ban the use of 'noop' in manifests, as it leaves us with no way of guaranteeing a proper dry run. -- 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 unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
