summaryrefslogtreecommitdiffstats
path: root/lib/puppet/application
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/application')
-rw-r--r--lib/puppet/application/puppet.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/puppet/application/puppet.rb b/lib/puppet/application/puppet.rb
index e4baf5d05..2f7946b3d 100644
--- a/lib/puppet/application/puppet.rb
+++ b/lib/puppet/application/puppet.rb
@@ -1,5 +1,6 @@
require 'puppet'
require 'puppet/application'
+require 'puppet/configurer'
require 'puppet/network/handler'
require 'puppet/network/client'
@@ -124,9 +125,15 @@ Puppet::Application.new(:puppet) do
catalog.retrieval_duration = Time.now - starttime
+ configurer = Puppet::Configurer.new
+ configurer.execute_prerun_command
+
# And apply it
transaction = catalog.apply
+ configurer.execute_postrun_command
+
+ status = 0
if not Puppet[:noop] and options[:detailed_exitcodes] then
transaction.generate_report
exit(transaction.report.exit_status)
@@ -134,9 +141,7 @@ Puppet::Application.new(:puppet) do
exit(0)
end
rescue => detail
- if Puppet[:trace]
- puts detail.backtrace
- end
+ puts detail.backtrace if Puppet[:trace]
if detail.is_a?(XMLRPC::FaultException)
$stderr.puts detail.message
else