The build works for me on my host ( windows vista). Let's try a another on unix at work
what test fail on yours? -Dan brettporter wrote: > > This seems to have broken the unit tests... are they working for you? > > - Brett > > On 03/01/2009, at 10:35 AM, dant...@apache.org wrote: > >> Author: dantran >> Date: Fri Jan 2 15:35:51 2009 >> New Revision: 730869 >> >> URL: http://svn.apache.org/viewvc?rev=730869&view=rev >> Log: >> WAGON-254: rewritten known_hosts file only if its contents are changed >> >> Added: >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/KnownHostEntry.java >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProviderTest.java >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/ >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts_same >> Modified: >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> AbstractKnownHostsProvider.java >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProvider.java >> maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> StreamKnownHostsProvider.java >> >> Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/ >> main/java/org/apache/maven/wagon/providers/ssh/knownhost/ >> AbstractKnownHostsProvider.java >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java?rev=730869&r1=730868&r2=730869&view=diff >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> AbstractKnownHostsProvider.java (original) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> AbstractKnownHostsProvider.java Fri Jan 2 15:35:51 2009 >> @@ -20,6 +20,8 @@ >> */ >> >> import java.io.IOException; >> +import java.util.HashSet; >> +import java.util.Set; >> >> /** >> * Common base for known hosts providers. >> @@ -41,6 +43,8 @@ >> * the known hosts, in the openssh format >> */ >> protected String contents; >> + >> + protected Set knownHosts = new HashSet(); >> >> public void setHostKeyChecking( String hostKeyChecking ) >> { >> @@ -56,14 +60,11 @@ >> { >> return contents; >> } >> - >> - public void setContents( String contents ) >> - { >> - this.contents = contents; >> - } >> >> public void storeKnownHosts( String contents ) >> throws IOException >> { >> } >> + >> + >> } >> >> Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/ >> main/java/org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProvider.java >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java?rev=730869&r1=730868&r2=730869&view=diff >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProvider.java (original) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProvider.java Fri Jan 2 15:35:51 2009 >> @@ -19,13 +19,14 @@ >> * under the License. >> */ >> >> -import org.codehaus.plexus.util.FileUtils; >> - >> import java.io.ByteArrayInputStream; >> import java.io.File; >> import java.io.FileInputStream; >> import java.io.IOException; >> import java.io.InputStream; >> +import java.util.Set; >> + >> +import org.codehaus.plexus.util.FileUtils; >> >> /** >> * Provides known hosts from a file >> @@ -70,10 +71,16 @@ >> public void storeKnownHosts( String contents ) >> throws IOException >> { >> - file.getParentFile().mkdirs(); >> - FileUtils.fileWrite( file.getAbsolutePath(), contents ); >> + Set hosts = this.loadKnownHosts( contents ); >> + >> + if ( ! this.knownHosts.equals( hosts ) ) >> + { >> + file.getParentFile().mkdirs(); >> + FileUtils.fileWrite( file.getAbsolutePath(), contents ); >> + this.knownHosts = hosts; >> + } >> } >> - >> + >> public File getFile() >> { >> return file; >> >> Added: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/ >> java/org/apache/maven/wagon/providers/ssh/knownhost/ >> KnownHostEntry.java >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostEntry.java?rev=730869&view=auto >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/KnownHostEntry.java >> (added) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/KnownHostEntry.java >> Fri Jan 2 15:35:51 2009 >> @@ -0,0 +1,97 @@ >> +package org.apache.maven.wagon.providers.ssh.knownhost; >> + >> +public class KnownHostEntry >> +{ >> + >> + private String hostName; >> + >> + private String keyType; >> + >> + private String keyValue; >> + >> + public KnownHostEntry() >> + { >> + >> + } >> + >> + public KnownHostEntry( String hostName, String keyType, String >> keyValue ) >> + { >> + this.hostName = hostName; >> + this.keyType = keyType; >> + this.keyValue = keyValue; >> + } >> + >> + public String getHostName() >> + { >> + return hostName; >> + } >> + >> + public void setHostName( String hostName ) >> + { >> + this.hostName = hostName; >> + } >> + >> + public String getKeyType() >> + { >> + return keyType; >> + } >> + >> + public void setKeyType( String keyType ) >> + { >> + this.keyType = keyType; >> + } >> + >> + public String getKeyValue() >> + { >> + return keyValue; >> + } >> + >> + public void setKeyValue( String keyValue ) >> + { >> + this.keyValue = keyValue; >> + } >> + >> + public int hashCode() >> + { >> + final int prime = 31; >> + int result = 1; >> + result = prime * result + ( ( hostName == null ) ? 0 : >> hostName.hashCode() ); >> + result = prime * result + ( ( keyType == null ) ? 0 : >> keyType.hashCode() ); >> + result = prime * result + ( ( keyValue == null ) ? 0 : >> keyValue.hashCode() ); >> + return result; >> + } >> + >> + public boolean equals( Object obj ) >> + { >> + if ( this == obj ) >> + return true; >> + if ( obj == null ) >> + return false; >> + if ( getClass() != obj.getClass() ) >> + return false; >> + KnownHostEntry other = (KnownHostEntry) obj; >> + if ( hostName == null ) >> + { >> + if ( other.hostName != null ) >> + return false; >> + } >> + else if ( !hostName.equals( other.hostName ) ) >> + return false; >> + if ( keyType == null ) >> + { >> + if ( other.keyType != null ) >> + return false; >> + } >> + else if ( !keyType.equals( other.keyType ) ) >> + return false; >> + if ( keyValue == null ) >> + { >> + if ( other.keyValue != null ) >> + return false; >> + } >> + else if ( !keyValue.equals( other.keyValue ) ) >> + return false; >> + return true; >> + } >> + >> +} >> >> Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/ >> main/java/org/apache/maven/wagon/providers/ssh/knownhost/ >> StreamKnownHostsProvider.java >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/StreamKnownHostsProvider.java?rev=730869&r1=730868&r2=730869&view=diff >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> StreamKnownHostsProvider.java (original) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> StreamKnownHostsProvider.java Fri Jan 2 15:35:51 2009 >> @@ -19,11 +19,16 @@ >> * under the License. >> */ >> >> -import org.codehaus.plexus.util.IOUtil; >> -import org.codehaus.plexus.util.StringOutputStream; >> - >> +import java.io.BufferedReader; >> import java.io.IOException; >> import java.io.InputStream; >> +import java.io.StringReader; >> +import java.util.HashSet; >> +import java.util.Set; >> + >> +import org.codehaus.plexus.util.IOUtil; >> +import org.codehaus.plexus.util.StringOutputStream; >> +import org.codehaus.plexus.util.StringUtils; >> >> /** >> * Provides known hosts from a file >> @@ -43,10 +48,38 @@ >> StringOutputStream stringOutputStream = new >> StringOutputStream(); >> IOUtil.copy( stream, stringOutputStream ); >> this.contents = stringOutputStream.toString(); >> + >> + this.knownHosts = this.loadKnownHosts( this.contents ); >> } >> finally >> { >> IOUtil.close( stream ); >> } >> } >> + >> + protected Set loadKnownHosts( String contents ) >> + throws IOException >> + { >> + Set hosts = new HashSet(); >> + >> + BufferedReader br = new BufferedReader( new >> StringReader( contents ) ); >> + >> + String line = null; >> + >> + do >> + { >> + line = br.readLine(); >> + if ( line != null ) >> + { >> + String tokens[] = StringUtils.split( line ); >> + if ( tokens.length == 3 ) >> + { >> + hosts.add( new KnownHostEntry( tokens[0], >> tokens[1], tokens[2] ) ); >> + } >> + } >> + >> + }while ( line != null ); >> + >> + return hosts; >> + } >> } >> >> Added: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> java/org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProviderTest.java >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProviderTest.java?rev=730869&view=auto >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProviderTest.java (added) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/ >> org/apache/maven/wagon/providers/ssh/knownhost/ >> FileKnownHostsProviderTest.java Fri Jan 2 15:35:51 2009 >> @@ -0,0 +1,57 @@ >> +package org.apache.maven.wagon.providers.ssh.knownhost; >> + >> +import java.io.File; >> + >> +import org.codehaus.plexus.util.FileUtils; >> + >> +import junit.framework.TestCase; >> + >> +public class FileKnownHostsProviderTest >> + extends TestCase >> +{ >> + private File basedir = new File( System.getProperty( "basedir", >> "." ) ); >> + >> + private File testKnownHostsFile; >> + >> + >> + private FileKnownHostsProvider provider; >> + >> + public void setUp() >> + throws Exception >> + { >> + File readonlyKnownHostFile = new File( basedir, "src/test/ >> resources/known_hosts" ); >> + testKnownHostsFile = new File( basedir, "target/ >> known_hosts" ); >> + testKnownHostsFile.delete(); >> + FileUtils.copyFile( readonlyKnownHostFile, >> testKnownHostsFile ); >> + >> + provider = new FileKnownHostsProvider( testKnownHostsFile ); >> + >> + } >> + >> + public void testStoreKnownHostsNoChange() >> + throws Exception >> + { >> + long timestamp = this.testKnownHostsFile.lastModified(); >> + //file with the same contents, but with entries swapped >> + File sameKnownHostFile = new File( basedir, "src/test/ >> resources/known_hosts_same" ); >> + String contents = FileUtils.fileRead( sameKnownHostFile ); >> + >> + Thread.sleep( 50 ); >> + provider.storeKnownHosts( contents ); >> + assertEquals( "known_hosts file is rewritten", timestamp, >> testKnownHostsFile.lastModified() ); >> + } >> + >> + public void testStoreKnownHostsWithChange() >> + throws Exception >> + { >> + long timestamp = this.testKnownHostsFile.lastModified(); >> + File sameKnownHostFile = new File( basedir, "src/test/ >> resources/known_hosts_same" ); >> + String contents = FileUtils.fileRead( sameKnownHostFile ); >> + contents += "1 2 3"; >> + >> + Thread.sleep( 50 ); >> + provider.storeKnownHosts( contents ); >> + assertTrue( "known_hosts file is not rewritten", timestamp ! >> = testKnownHostsFile.lastModified() ); >> + } >> + >> +} >> >> Added: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/resources/known_hosts?rev=730869&view=auto >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts (added) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts Fri Jan 2 15:35:51 2009 >> @@ -0,0 +1,2 @@ >> +server,192.168.0.10 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtnWEbH/ >> WTZG2aAl9gX8HtMqXidzQXgluARIOijWigbvA4/3N4fnNmckXBUHR32iqHQM/ >> ySIRhc9EVDanDy0JyKdm738PwP0DbWGqiIDTtukbju4DAtXtOx3LgIqHc0PD+cquO9Ut/ >> 68o6/GdBgN18nVOMt+8Q9Vr1VSFqfHoLEx04NI+4BbGaGKQOFU25VJ3KtM0zkoyDfu0/ >> MDusVoFIDVb0KtfxZVEDRmEFnySpFHOBdSdODsunftYccCNTNdsh >> + >> 58jSqChUUlP3B0bTykm7o52CrXCMWCsLzH6dDkN7GUQwLvjPG04gedeZg6tEN8vTInRmHQrp0TTW7JGNjXgw >> >> == >> +192.168.0.11 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtnWEbH/ >> WTZG2aAl9gX8HtMqXidzQXgluARIOijWigbvA4/3N4fnNmckXBUHR32iqHQM/ >> ySIRhc9EVDanDy0JyKdm738PwP0DbWGqiIDTtukbju4DAtXtOx3LgIqHc0PD+cquO9Ut/ >> 68o6/GdBgN18nVOMt+8Q9Vr1VSFqfHoLEx04NI+4BbGaGKQOFU25VJ3KtM0zkoyDfu0/ >> MDusVoFIDVb0KtfxZVEDRmEFnySpFHOBdSdODsunftYccCNTNdsh >> + >> 58jSqChUUlP3B0bTykm7o52CrXCMWCsLzH6dDkN7GUQwLvjPG04gedeZg6tEN8vTInRmHQrp0TTW7JGNjXgw >> >> == >> >> Added: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts_same >> URL: >> http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/resources/known_hosts_same?rev=730869&view=auto >> = >> = >> = >> = >> = >> = >> = >> = >> ====================================================================== >> --- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts_same (added) >> +++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/ >> resources/known_hosts_same Fri Jan 2 15:35:51 2009 >> @@ -0,0 +1,2 @@ >> +192.168.0.11 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtnWEbH/ >> WTZG2aAl9gX8HtMqXidzQXgluARIOijWigbvA4/3N4fnNmckXBUHR32iqHQM/ >> ySIRhc9EVDanDy0JyKdm738PwP0DbWGqiIDTtukbju4DAtXtOx3LgIqHc0PD+cquO9Ut/ >> 68o6/GdBgN18nVOMt+8Q9Vr1VSFqfHoLEx04NI+4BbGaGKQOFU25VJ3KtM0zkoyDfu0/ >> MDusVoFIDVb0KtfxZVEDRmEFnySpFHOBdSdODsunftYccCNTNdsh >> + >> 58jSqChUUlP3B0bTykm7o52CrXCMWCsLzH6dDkN7GUQwLvjPG04gedeZg6tEN8vTInRmHQrp0TTW7JGNjXgw >> >> == >> +server,192.168.0.10 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtnWEbH/ >> WTZG2aAl9gX8HtMqXidzQXgluARIOijWigbvA4/3N4fnNmckXBUHR32iqHQM/ >> ySIRhc9EVDanDy0JyKdm738PwP0DbWGqiIDTtukbju4DAtXtOx3LgIqHc0PD+cquO9Ut/ >> 68o6/GdBgN18nVOMt+8Q9Vr1VSFqfHoLEx04NI+4BbGaGKQOFU25VJ3KtM0zkoyDfu0/ >> MDusVoFIDVb0KtfxZVEDRmEFnySpFHOBdSdODsunftYccCNTNdsh >> + >> 58jSqChUUlP3B0bTykm7o52CrXCMWCsLzH6dDkN7GUQwLvjPG04gedeZg6tEN8vTInRmHQrp0TTW7JGNjXgw >> >> == >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: wagon-commits-unsubscr...@maven.apache.org >> For additional commands, e-mail: wagon-commits-h...@maven.apache.org >> > > -- > Brett Porter > br...@apache.org > http://blogs.exist.com/bporter/ > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: wagon-dev-unsubscr...@maven.apache.org > For additional commands, e-mail: wagon-dev-h...@maven.apache.org > > > -- View this message in context: http://www.nabble.com/Re%3A-svn-commit%3A-r730869---in--maven-wagon-trunk-wagon-providers-wagon-ssh-common-src%3A-main-java-org-apache-maven-wagon-providers-ssh-knownhost--test-java-org-apache-maven-wagon-providers-ssh-knownhost--test-resources--tp21284515p21430156.html Sent from the Wagon - Dev mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: wagon-dev-unsubscr...@maven.apache.org For additional commands, e-mail: wagon-dev-h...@maven.apache.org