Skip to content

Commit 4d1cb8a

Browse files
Bruce Irschickbirschick-bqAlexey Temnikov
authored
[AD-1017] Implement single-instance SSH tunnel. (#453)
* [AD-1017] Implement single-instance SSH tunnel. * Handle late-bound invocation (DbVisualizer) * Ensure support for multiple hash algorithms. * Properly embed new SSH tunnel component. * [AD-1017] Attempt to debug multi-process test. * [AD-1017] Attempt to debug multi-process test. * [AD-1017] Attempt to debug multi-process test - #3. * Commit Code Coverage Badge * [AD-1017] Attempt to find correct location for test source file. * [AD-1017] Attempt to find correct location for test source file - #2. * [AD-1017] Fix spotBugs error; code review improvements. * [AD-1017] Ignore IO exceptions when reading spawned processes. * Commit Code Coverage Badge * [AD-1017] Update dependency for mongo to 4.8.1 * Commit Code Coverage Badge * [AD-1017] Attempt improve stability of SSH Tunnel client tests. * [AD-1017] Attempt improve stability of multiprocess connection test. * Commit Code Coverage Badge * Update src/main/java/software/amazon/documentdb/jdbc/DocumentDbConnectionProperties.java Co-authored-by: Alexey Temnikov <[email protected]> * [AD-1017] Properly rename parameter. * Commit Code Coverage Badge * [AD-1017] Fix issue with output not being sent to the console (i.e., change level from INFO to ERROR). * Commit Code Coverage Badge * [AD-1017] Attempt to increase code coverage. * [AD-1017] Fix style issue. * Commit Code Coverage Badge Co-authored-by: birschick-bq <[email protected]> Co-authored-by: Alexey Temnikov <[email protected]>
1 parent 74fb1e1 commit 4d1cb8a

32 files changed

+3204
-469
lines changed

.github/badges/branches.svg

+1-1
Loading

.github/badges/jacoco.svg

+1-1
Loading

NOTICE

+6-6
Original file line numberDiff line numberDiff line change
@@ -348,12 +348,12 @@ Package Artifact: https://repo.maven.apache.org/maven2/com/google/protobuf/proto
348348
Package Artifact: https://repo.maven.apache.org/maven2/com/google/protobuf/protobuf-java/3.6.1/protobuf-java-3.6.1-sources.jar
349349
Package Artifact: https://github.com/google/protobuf.git
350350
-----------------------
351-
Package ID: com.jcraft:jsch:0.1.55
352-
Package Homepage: http://www.jcraft.com/jsch/
351+
Package ID: com.github.mwiede:jsch:0.2.4
352+
Package Homepage: https://github.com/mwiede/jsch
353353
Package SPDX-License-Identifier: BSD-3-Clause
354-
Package Artifact: https://repo.maven.apache.org/maven2/com/jcraft/jsch/0.1.55/jsch-0.1.55.jar
355-
Package Artifact: https://repo.maven.apache.org/maven2/com/jcraft/jsch/0.1.55/jsch-0.1.55-sources.jar
356-
Package Artifact: http://git.jcraft.com/jsch.git
354+
Package Artifact: https://repo.maven.org/maven2/com/github/mwiede/jsch/0.2.4/jsch-0.2.4.jar
355+
Package Artifact: https://repo.maven.org/maven2/com/github/mwiede/jsch/0.2.4/jsch-0.2.4-sources.jar
356+
Package Artifact: https://github.com/mwiede/jsch.git
357357
-----------------------
358358
Package ID: org.codehaus.janino:commons-compiler:3.1.6
359359
Package Homepage: http://janino-compiler.github.io/commons-compiler/
@@ -16570,7 +16570,7 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
1657016570
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1657116571
-----------------------
1657216572

16573-
com.jcraft/jsch/0.1.55 LICENSE
16573+
github.com/mwiede/jsch/0.2.4 LICENSE
1657416574

1657516575
JSch 0.0.* was released under the GNU LGPL license. Later, we have switched
1657616576
over to a BSD-style license.

build.gradle

+20-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
id 'java'
3-
id 'com.github.spotbugs' version '5.0.10'
3+
id 'com.github.spotbugs' version '5.0.13'
44
id 'checkstyle'
55
id 'jacoco'
66
id 'com.github.hierynomus.license' version '0.16.1'
@@ -92,7 +92,7 @@ shadowJar {
9292
minimize {
9393
exclude(dependency('org.apache.calcite::'))
9494
exclude(dependency('org.slf4j.*::'))
95-
exclude(dependency('com.jcraft::'))
95+
exclude(dependency('com.github.mwiede::'))
9696
}
9797
}
9898

@@ -145,24 +145,32 @@ spotbugsMain {
145145
// Configure HTML report
146146
reports {
147147
xml {
148-
enabled = true
148+
required.set(true)
149149
destination = file("$buildDir/reports/spotbugs/main.xml")
150150
}
151+
html {
152+
required.set(true)
153+
destination = file("$buildDir/reports/spotbugs/main.html")
151154
}
155+
}
152156
}
153157
spotbugsTest {
154158
// Configure HTML report
155159
reports {
156160
xml {
157-
enabled = true
161+
required.set(true)
158162
destination = file("$buildDir/reports/spotbugs/test.xml")
159163
}
164+
html {
165+
required.set(true)
166+
destination = file("$buildDir/reports/spotbugs/test.html")
160167
}
168+
}
161169
}
162170

163171
task checkSpotBugsMainReport {
164172
doLast {
165-
def xmlReport = spotbugsMain.reports.getByName("XML")
173+
def xmlReport = spotbugsMain.reports.getByName("xml")
166174
def slurped = new groovy.xml.XmlSlurper().parse(xmlReport.destination)
167175
def bugsFound = slurped.BugInstance.size()
168176
slurped.BugInstance.each {
@@ -179,7 +187,7 @@ task checkSpotBugsMainReport {
179187

180188
task checkSpotBugsTestReport {
181189
doLast {
182-
def xmlReport = spotbugsTest.reports.getByName("XML")
190+
def xmlReport = spotbugsTest.reports.getByName("xml")
183191
def slurped = new XmlSlurper().parse(xmlReport.destination)
184192
def bugsFound = slurped.BugInstance.size()
185193
slurped.BugInstance.each {
@@ -312,13 +320,14 @@ dependencies {
312320
implementation group: 'com.google.guava', name: 'guava', version: '31.1-jre'
313321
implementation group: 'org.slf4j', name: 'slf4j-log4j12', version: '2.0.5'
314322
implementation group: 'org.apache.commons', name: 'commons-text', version: '1.10.0'
323+
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0'
315324
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.19.0'
316325
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.19.0'
317-
implementation group: 'org.mongodb', name: 'mongodb-driver-sync', version: '4.7.2'
318-
implementation group: 'com.jcraft', name: 'jsch', version: '0.1.55'
326+
implementation group: 'org.mongodb', name: 'mongodb-driver-sync', version: '4.8.1'
327+
implementation group: 'com.github.mwiede', name: 'jsch', version: '0.2.4'
319328
implementation group: 'org.apache.calcite', name: 'calcite-core', version: '1.32.0'
320329
implementation group: 'commons-beanutils', name: 'commons-beanutils', version: '1.9.4'
321-
implementation 'io.github.hakky54:sslcontext-kickstart:7.4.7'
330+
implementation 'io.github.hakky54:sslcontext-kickstart:7.4.8'
322331

323332
compileOnly group: 'org.immutables', name: 'value', version: '2.9.2'
324333
compileOnly group: 'com.puppycrawl.tools', name: 'checkstyle', version: '10.5.0'
@@ -331,7 +340,7 @@ dependencies {
331340
testAnnotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.24'
332341
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.9.1'
333342
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-params', version: '5.9.1'
334-
testImplementation group: 'org.mockito', name: 'mockito-core', version: '4.8.0'
343+
testImplementation group: 'org.mockito', name: 'mockito-core', version: '4.9.0'
335344
testRuntimeOnly group: 'de.flapdoodle.embed', name: 'de.flapdoodle.embed.mongo', version: '3.5.3'
336345
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-api:5.9.1'
337346
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
@@ -342,7 +351,7 @@ dependencies {
342351
testFixturesCompileOnly group: 'de.flapdoodle.embed', name: 'de.flapdoodle.embed.mongo', version: '3.5.3'
343352
testFixturesCompileOnly 'org.junit.jupiter:junit-jupiter-api:5.9.1'
344353
testFixturesImplementation group: 'com.google.guava', name: 'guava', version: '29.0-jre'
345-
testFixturesImplementation group: 'org.mongodb', name: 'mongodb-driver-sync', version: '4.7.2'
354+
testFixturesImplementation group: 'org.mongodb', name: 'mongodb-driver-sync', version: '4.8.1'
346355
testFixturesImplementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.2'
347356
testFixturesImplementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.17.2'
348357
}

config/spotbugs/spotbugs-exclude.xml

+7-1
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,20 @@
9090
<Bug pattern="ODR_OPEN_DATABASE_RESOURCE"/>
9191
</Match>
9292
<Match>
93-
<Source name="Driver.java"/>
93+
<Or>
94+
<Source name="Driver.java"/>
95+
<Source name="DocumentDbSshTunnelServer.java"/>
96+
</Or>
9497
<Bug pattern="COMMAND_INJECTION"/>
9598
</Match>
9699
<Match>
97100
<Or>
98101
<Source name="DocumentDbConnectionProperties.java"/>
99102
<Source name="DocumentDbConnectionPropertiesTest.java"/>
100103
<Source name="DocumentDbMain.java"/>
104+
<Source name="DocumentDbSshTunnelLock.java"/>
105+
<Source name="DocumentDbSshTunnelServer.java"/>
106+
<Source name="DocumentDbSshTunnelService.java"/>
101107
</Or>
102108
<Bug pattern="PATH_TRAVERSAL_IN"/>
103109
</Match>

0 commit comments

Comments
 (0)