Repository: maven-wagon
Updated Branches:
  refs/heads/master af7aeffc4 -> 5a8a63f6c


[WAGON-465] Add ability to ignore errors sshexec errors
on stderr and non zero exit code by introduce another execute method. No
behavior changes on existing methods

Project: http://git-wip-us.apache.org/repos/asf/maven-wagon/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-wagon/commit/5a8a63f6
Tree: http://git-wip-us.apache.org/repos/asf/maven-wagon/tree/5a8a63f6
Diff: http://git-wip-us.apache.org/repos/asf/maven-wagon/diff/5a8a63f6

Branch: refs/heads/master
Commit: 5a8a63f6c425f0e572032a9ab64ae086047dfd88
Parents: af7aeff
Author: trand8 <dan.t...@emc.com>
Authored: Fri Oct 28 20:40:20 2016 -0700
Committer: trand8 <dan.t...@emc.com>
Committed: Fri Oct 28 20:40:20 2016 -0700

----------------------------------------------------------------------
 .../providers/ssh/jsch/AbstractJschWagon.java   | 26 +++++++++++++++++---
 1 file changed, 22 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/5a8a63f6/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
----------------------------------------------------------------------
diff --git 
a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
 
b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
index 9f51d90..8a9b4f3 100644
--- 
a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
+++ 
b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
@@ -305,7 +305,7 @@ public abstract class AbstractJschWagon
         }
     }
 
-    public Streams executeCommand( String command, boolean ignoreFailures )
+    public Streams executeCommand( String command, boolean ignoreStdErr, 
boolean ignoreNoneZeroExitCode )
         throws CommandExecutionException
     {
         ChannelExec channel = null;
@@ -330,9 +330,14 @@ public abstract class AbstractJschWagon
             stderrReader.close();
             stderrReader = null;
 
-            if ( streams.getErr().length() > 0 && !ignoreFailures )
+            int exitCode = channel.getExitStatus();
+            if ( streams.getErr().length() > 0 && !ignoreStdErr )
+            {
+                throw new CommandExecutionException( "Exit code: " + exitCode 
+ " - " + streams.getErr() );
+            }
+
+            if ( exitCode != 0 && !ignoreNoneZeroExitCode )
             {
-                int exitCode = channel.getExitStatus();
                 throw new CommandExecutionException( "Exit code: " + exitCode 
+ " - " + streams.getErr() );
             }
 
@@ -397,9 +402,22 @@ public abstract class AbstractJschWagon
     {
         fireTransferDebug( "Executing command: " + command );
 
-        executeCommand( command, false );
+        //backward compatible with wagon 2.10
+        executeCommand( command, false, true );
     }
 
+
+    public Streams executeCommand( String command, boolean ignoreError )
+        throws CommandExecutionException
+    {
+        fireTransferDebug( "Executing command: " + command );
+
+        //backward compatible with wagon 2.10
+        return executeCommand( command, ignoreError, ignoreError );
+    }
+
+
+
     public InteractiveUserInfo getInteractiveUserInfo()
     {
         return this.interactiveUserInfo;

Reply via email to