You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wagon-commits@maven.apache.org by da...@apache.org on 2008/01/01 05:14:41 UTC
svn commit: r607799 - in /maven/wagon/trunk:
wagon-provider-test/src/main/java/org/apache/maven/wagon/
wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/
wagon-providers/wagon-ssh/src/main/java/org/apache/mave...
Author: dantran
Date: Mon Dec 31 20:14:41 2007
New Revision: 607799
URL: http://svn.apache.org/viewvc?rev=607799&view=rev
Log:
Fix NPE found in AbstractJschWagon (WAGON-91) and handle ignoreFailures flag for both Jsch and Ganymed wagon providers (WAGON-94).
Modified:
maven/wagon/trunk/wagon-provider-test/src/main/java/org/apache/maven/wagon/CommandExecutorTestCase.java
maven/wagon/trunk/wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/AbstractGanymedWagon.java
maven/wagon/trunk/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
Modified: maven/wagon/trunk/wagon-provider-test/src/main/java/org/apache/maven/wagon/CommandExecutorTestCase.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-provider-test/src/main/java/org/apache/maven/wagon/CommandExecutorTestCase.java?rev=607799&r1=607798&r2=607799&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-provider-test/src/main/java/org/apache/maven/wagon/CommandExecutorTestCase.java (original)
+++ maven/wagon/trunk/wagon-provider-test/src/main/java/org/apache/maven/wagon/CommandExecutorTestCase.java Mon Dec 31 20:14:41 2007
@@ -1,22 +1,18 @@
package org.apache.maven.wagon;
/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
*/
import org.codehaus.plexus.PlexusTestCase;
@@ -52,6 +48,30 @@
catch ( CommandExecutionException e )
{
assertTrue( e.getMessage().trim().endsWith( "fail: command not found" ) );
+ }
+ finally
+ {
+ exec.disconnect();
+ }
+ }
+
+ public void testIgnoreFailuresInCommandExecuted()
+ throws Exception
+ {
+ CommandExecutor exec = (CommandExecutor) lookup( CommandExecutor.ROLE );
+
+ Repository repository = getTestRepository();
+
+ AuthenticationInfo authenticationInfo = new AuthenticationInfo();
+ authenticationInfo.setUserName( System.getProperty( "user.name" ) );
+
+ exec.connect( repository, authenticationInfo );
+
+ try
+ {
+ Streams streams = exec.executeCommand( "fail", true );
+ //expect no exception, and stderr has something.
+ assertTrue( streams.getErr().length() > 0 );
}
finally
{
Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/AbstractGanymedWagon.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/AbstractGanymedWagon.java?rev=607799&r1=607798&r2=607799&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/AbstractGanymedWagon.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-ssh-ganymed/src/main/java/org/apache/maven/wagon/providers/ssh/ganymed/AbstractGanymedWagon.java Mon Dec 31 20:14:41 2007
@@ -186,7 +186,7 @@
{
Streams streams = CommandExecutorStreamProcessor.processStreams( stderrReader, stdoutReader );
- if ( streams.getErr().length() > 0 )
+ if ( streams.getErr().length() > 0 && !ignoreFailures )
{
int exitCode = session.getExitStatus().intValue();
throw new CommandExecutionException( "Exit code: " + exitCode + " - " + streams.getErr() );
Modified: maven/wagon/trunk/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java?rev=607799&r1=607798&r2=607799&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java Mon Dec 31 20:14:41 2007
@@ -192,7 +192,7 @@
HostKeyRepository hkr = sch.getHostKeyRepository();
HostKey[] keys = hkr.getHostKey();
- for ( int i = 0; i < keys.length; i++ )
+ for ( int i = 0; keys != null && i < keys.length; i++ )
{
HostKey key = keys[i];
w.println( key.getHost() + " " + key.getType() + " " + key.getKey() );
@@ -259,7 +259,7 @@
Streams streams = CommandExecutorStreamProcessor.processStreams( stderrReader, stdoutReader );
- if ( streams.getErr().length() > 0 )
+ if ( streams.getErr().length() > 0 && !ignoreFailures )
{
int exitCode = channel.getExitStatus();
throw new CommandExecutionException( "Exit code: " + exitCode + " - " + streams.getErr() );
---------------------------------------------------------------------
To unsubscribe, e-mail: wagon-commits-unsubscribe@maven.apache.org
For additional commands, e-mail: wagon-commits-help@maven.apache.org