summaryrefslogtreecommitdiffstats
path: root/bin/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'bin/puppet')
-rwxr-xr-xbin/puppet14
1 files changed, 14 insertions, 0 deletions
diff --git a/bin/puppet b/bin/puppet
index 9fcbfe372..b39a5160b 100755
--- a/bin/puppet
+++ b/bin/puppet
@@ -142,6 +142,20 @@ rescue GetoptLong::InvalidOption => detail
exit(1)
end
+client = nil
+server = nil
+
+[:INT, :TERM].each do |signal|
+ trap(signal) do
+ Puppet.notice "Caught #{signal}; shutting down"
+ [client, server].each { |obj|
+ if obj
+ obj.shutdown
+ end
+ }
+ end
+end
+
if debug
Puppet::Log.level = :debug
elsif verbose