On Wednesday, February 17, 2016 at 7:10:29 PM UTC-6, Warron French wrote:
>
> Can someone please clearly explain why/when to use:
> puppet apply versus Puppet agent?
>


Responding to your specific (mis)understandings:
 

> I believe, but I want to be thoroughly corrected, the following:
> 1.  puppet apply  (with --noop) is for 'smoke' testing a specific manifest 
> .PP-file, but
>


Not really, unless you ordinarily use 'puppet apply' (*without* --noop) to 
build and apply catalogs.

Your manifests and data need to be present on the host where you build the 
catalog, but they do not necessarily need to be present on the node to 
which you apply a catalog.  If your nodes ordinarily obtain their catalogs 
via the agent, then they probably don't have the manifests and data.  
Moreover, some aspects of catalog building can produce different results 
depending on where they run.

Additionally, the community's conventional choice for testing Puppet 
modules is Rspec.

 

> 2. puppet apply will apply a single (specified on cli) module in reality; 
> but,
>


Not necessarily.  'puppet apply' will build a catalog locally, starting 
from the manifest file you specify to it, and referencing other manifests 
and data as necessary.  If successful, it will then apply the catalog to 
the node on which it is running.  To the best of my knowledge, the only 
essential difference between the catalog building process performed by the 
master and the one performed by 'puppet apply' is how the starting-point 
manifest(s) are chosen.  Note also that the manifest you specify to 'apply' 
does not have to belong to a module.

 

> 3.  a puppet agent -t searches the deltas of files tracked by the Puppet 
> Master and applies all changes for all modules wherever the modules are 
> actually appropriate candidates.
>


No, I think that's a poor characterization.  'puppet agent' requests that 
the master build a catalog for the local node, and then applies that 
catalog; together these constitute a "catalog run".  Depending on the 
options you specify, the agent may do this just once, or it may run as a 
daemon, performing catalog runs on a configurable schedule.  The second 
stage, applying the catalog received from the master, is no different when 
performed by the agent than when performed by 'puppet apply'.  The first 
stage differs mainly in where it is performed. Where a master is in use, it 
typically does far more than track files.  For its part, the agent has 
nothing to do with deciding *what* to apply; its job is to determine *how* 
to apply it.


Overall, I suspect that your misunderstandings are based, in part, on an 
idea that you would routinely have use for both 'puppet agent' and 'puppet 
apply'.  Typically, however, a Puppet shop will use either one or the 
other, not both.


John

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/80c5bf43-87bd-4f89-b5a1-8147c4a86a7e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to