Skip to content

Commit ccd7e41

Browse files
committed
add ssl cqlsh test and docs
1 parent 60f7dd4 commit ccd7e41

File tree

4 files changed

+30
-8
lines changed

4 files changed

+30
-8
lines changed

docs/modules/databases/scylladb.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ You can start a ScyllaDB container instance from any Java application by using:
2424
[Using SSL](../../../modules/scylladb/src/test/java/org/testcontainers/scylladb/ScyllaDBContainerTest.java) inside_block:sslContext
2525
<!--/codeinclude-->
2626

27+
<!--codeinclude-->
28+
[Using SSL with cqlsh](../../../modules/scylladb/src/test/java/org/testcontainers/scylladb/ScyllaDBContainerTest.java) inside_block:sslCqlsh
29+
<!--/codeinclude-->
30+
2731
<!--codeinclude-->
2832
[Using Shard Awareness port](../../../modules/scylladb/src/test/java/org/testcontainers/scylladb/ScyllaDBContainerTest.java) inside_block:shardAwarenessSession
2933
<!--/codeinclude-->

modules/scylladb/src/test/java/org/testcontainers/scylladb/ScyllaDBContainerTest.java

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
import com.datastax.oss.driver.api.core.CqlSession;
44
import com.datastax.oss.driver.api.core.cql.ResultSet;
55
import org.junit.Test;
6+
import org.testcontainers.containers.Container;
67
import org.testcontainers.utility.DockerImageName;
8+
import org.testcontainers.utility.MountableFile;
79
import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
810
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
911
import software.amazon.awssdk.regions.Region;
@@ -62,7 +64,7 @@ public void testSimple() {
6264

6365
@Test
6466
public void testSimpleSsl()
65-
throws NoSuchAlgorithmException, KeyStoreException, IOException, CertificateException, UnrecoverableKeyException, KeyManagementException {
67+
throws InterruptedException, NoSuchAlgorithmException, KeyStoreException, IOException, CertificateException, UnrecoverableKeyException, KeyManagementException {
6668
try (
6769
// custom_configuration {
6870
ScyllaDBContainer scylladb = new ScyllaDBContainer(SCYLLADB_IMAGE)
@@ -110,6 +112,22 @@ public void testSimpleSsl()
110112
}
111113
}
112114

115+
@Test
116+
public void testSimpleSslCqlsh() throws InterruptedException, IOException {
117+
try (
118+
ScyllaDBContainer scylladb = new ScyllaDBContainer(SCYLLADB_IMAGE)
119+
.withConfigurationOverride("scylla-test-ssl")
120+
) {
121+
scylladb.start();
122+
123+
// sslCqlsh {
124+
scylladb.execInContainer("mv", "-f", "/etc/scylla/cqlshrc", "/root/.cassandra/cqlshrc");
125+
Container.ExecResult execResult = scylladb.execInContainer("cqlsh", "--ssl", "-e", "select * from system_schema.keyspaces;");
126+
assertThat(execResult.getStdout()).contains("keyspace_name");
127+
// }
128+
}
129+
}
130+
113131
@Test
114132
public void testShardAwareness() {
115133
try (ScyllaDBContainer scylladb = new ScyllaDBContainer(SCYLLADB_IMAGE)) {

modules/scylladb/src/test/resources/initial.cql

Lines changed: 0 additions & 7 deletions
This file was deleted.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[connection]
2+
port = 9042
3+
hostname = 172.17.0.3
4+
factory = cqlshlib.ssl.ssl_transport_factory
5+
[ssl]
6+
certfile = /etc/scylla/node0.cer.pem
7+
validate = false

0 commit comments

Comments
 (0)