title: Puppet Execution Flow
body: <p>I have this node.pp and I am wondering how puppet is going to execute it.</p>
  
  <pre><code>node 'agent.puppet.demo' {
      include ssh
      include postfix
      include mysql
      include apache
  }
  </code></pre>
  
  <p>On the agent node, when I run this:</p>
  
  <pre><code>$ puppetd -t -d
  </code></pre>
  
  <p>The puppet is not executing it sequentially meaning, it does not execute ssh first, then postfix, ...</p>
  
  <p>Does anyone know why this is? Is it because it is called 'declarative language' where the order of execution does not really matter?</p>
  
  <p>If this is the case, then I can just in a certain way, declare what I want and puppet will figure out how to execute it?</p>