Skip to content

Commit 5134686

Browse files
committed
included gears module file in project. Fixes #1
1 parent a6deb28 commit 5134686

File tree

4 files changed

+28
-39
lines changed

4 files changed

+28
-39
lines changed

src/main/java/com/redislabs/testcontainers/RedisEnterpriseContainer.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,11 @@ public RedisEnterpriseContainer withDatabaseName(String name) {
116116
return this;
117117
}
118118

119+
public RedisEnterpriseContainer withOSSCluster() {
120+
this.ossCluster = true;
121+
return this;
122+
}
123+
119124
@SneakyThrows
120125
@Override
121126
protected void containerIsStarted(InspectContainerResponse containerInfo) {
@@ -161,11 +166,6 @@ private void createCluster(String username, String password, String externalAddr
161166
}
162167
}
163168

164-
public RedisEnterpriseContainer withOSSCluster() {
165-
this.ossCluster = true;
166-
return this;
167-
}
168-
169169
@Override
170170
public String getRedisURI() {
171171
return RedisServer.redisURI(getHost(), ENDPOINT_PORT);

src/main/java/com/redislabs/testcontainers/support/enterprise/DatabaseProvisioner.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
import java.io.ByteArrayOutputStream;
2020
import java.io.InputStream;
21-
import java.net.URL;
2221
import java.time.Duration;
2322
import java.util.HashMap;
2423
import java.util.Map;
@@ -27,7 +26,6 @@
2726
public class DatabaseProvisioner {
2827

2928
public static final String GEARS_MODULE_FILE = "redisgears.linux-bionic-x64.1.0.6.zip";
30-
public static final String URL_GEARS_MODULE = "https://redismodules.s3.amazonaws.com/redisgears/" + GEARS_MODULE_FILE;
3129

3230
private final RestAPI restAPI;
3331
private final Options options;
@@ -94,9 +92,7 @@ private Map<String, String> availableModules() throws Exception {
9492
}
9593

9694
private void installGears() throws Exception {
97-
URL url = new URL(URL_GEARS_MODULE);
98-
log.info("Downloading module file {}", url);
99-
try (InputStream zipInputStream = url.openStream()) {
95+
try (InputStream zipInputStream = getClass().getClassLoader().getResourceAsStream(GEARS_MODULE_FILE)) {
10096
ByteArrayOutputStream baos = new ByteArrayOutputStream();
10197
IOUtils.copy(zipInputStream, baos);
10298
log.info("Installing module {}", GEARS_MODULE_FILE);
1.57 MB
Binary file not shown.

src/test/java/com/redislabs/testcontainers/TestRedisEnterprise.java

Lines changed: 22 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package com.redislabs.testcontainers;
22

3-
import com.redislabs.mesclun.api.sync.RedisGearsCommands;
3+
import com.redislabs.mesclun.RedisModulesClient;
4+
import com.redislabs.mesclun.api.StatefulRedisModulesConnection;
45
import com.redislabs.mesclun.cluster.RedisModulesClusterClient;
56
import com.redislabs.mesclun.cluster.api.StatefulRedisModulesClusterConnection;
67
import com.redislabs.mesclun.gears.RedisGearsUtils;
7-
import com.redislabs.mesclun.gears.output.ExecutionResults;
88
import com.redislabs.mesclun.search.Field;
99
import com.redislabs.mesclun.search.SearchResults;
1010
import com.redislabs.testcontainers.support.enterprise.rest.Database;
@@ -85,32 +85,25 @@ void searchCluster() {
8585
container.stop();
8686
}
8787
}
88-
//
89-
// @Test
90-
// void gearsCluster() {
91-
// RedisEnterpriseContainer container = new RedisEnterpriseContainer();
92-
// container.withShardCount(3);
93-
// container.withOSSCluster();
94-
// container.withModules(Database.Module.GEARS);
95-
// try {
96-
// container.start();
97-
// RedisModulesClusterClient client = RedisModulesClusterClient.create(container.getRedisURI());
98-
// try (StatefulRedisModulesClusterConnection<String, String> connection = client.connect()) {
99-
// connection.sync().set("foo", "bar");
100-
// ExecutionResults results = pyExecute(connection.sync(), "sleep.py");
101-
// Assertions.assertEquals("1", results.getResults().get(0));
102-
// }
103-
// } finally {
104-
// container.stop();
105-
// }
106-
// }
107-
//
108-
// private ExecutionResults pyExecute(RedisGearsCommands<String, String> sync, String resourceName) {
109-
// return sync.pyExecute(load(resourceName));
110-
// }
111-
//
112-
// private String load(String resourceName) {
113-
// return RedisGearsUtils.toString(getClass().getClassLoader().getResourceAsStream(resourceName));
114-
// }
88+
89+
@Test
90+
void gears() {
91+
RedisEnterpriseContainer container = new RedisEnterpriseContainer();
92+
container.withModules(Database.Module.GEARS);
93+
try {
94+
container.start();
95+
RedisModulesClient client = RedisModulesClient.create(container.getRedisURI());
96+
try (StatefulRedisModulesConnection<String, String> connection = client.connect()) {
97+
connection.sync().set("foo", "bar");
98+
connection.sync().pyExecute(load("sleep.py"));
99+
}
100+
} finally {
101+
container.stop();
102+
}
103+
}
104+
105+
private String load(String resourceName) {
106+
return RedisGearsUtils.toString(getClass().getClassLoader().getResourceAsStream(resourceName));
107+
}
115108

116109
}

0 commit comments

Comments
 (0)