diff --git a/lib/haibu/drone/index.js b/lib/haibu/drone/index.js
index <HASH>..<HASH> 100644
--- a/lib/haibu/drone/index.js
+++ b/lib/haibu/drone/index.js
@@ -166,6 +166,32 @@ exports.start = function (options, callback) {
   }
 
   function startHook (err) {
+    //
+    // There is a current bug in node that throws here:
+    //
+    // https://github.com/joyent/node/blob/v0.4.12/lib/net.js#L159
+    //
+    // It will throw a broken pipe error (EPIPE) when a child process that you 
+    // are piping to unexpectedly exits. The write function on line 159 is 
+    // defined here:
+    //
+    // https://github.com/joyent/node/blob/v0.4.12/lib/net.js#L62
+    //
+    // This uncaughtExceptionHandler will catch that error,
+    // and since it originated with in another sync context,
+    // this section will still respond to the request.
+    //
+    haibu.exceptions.logger.exitOnError = function (err) {
+      if (err.code === 'EPIPE') {
+        console.log('expected error:');
+        console.log('EPIPE -- probabaly caused by someone pushing a non gzip file.');
+        console.log('"net" throws on a broken pipe, current node bug, not haibu.');
+        return false;
+      }
+      
+      return true;
+    }
+    
     return err
       ? callback(err)
       : exports.startHook(options, startServer)
[minor] Add warning for supressed exception on EPIPE. This error is thrown in node@<I> when attempting to pipe a bad tarball to `haibu.config.get("tar")`