Skip to content

Commit c13bd4e

Browse files
committed
fix: edit testcontainers helper
1 parent ecbd7ec commit c13bd4e

1 file changed

Lines changed: 9 additions & 8 deletions

File tree

testcontainers/src/main/java/org/testcontainers/containers/utils/TarantoolContainerClientHelper.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,12 @@ public final class TarantoolContainerClientHelper {
6262

6363
private static final String TMP_DIR = "/tmp";
6464
private static final Yaml yaml = new Yaml();
65-
public static final String TARANTOOL_VERSION = System.getenv("TARANTOOL_VERSION");
65+
public static final String TARANTOOL_VERSION = System.getenv().getOrDefault("TARANTOOL_VERSION", "2.11.2-ubuntu20.04");
66+
private static final String TT_COMMAND = TARANTOOL_VERSION.startsWith("2.") ? "tarantoolctl" : "tt";
6667
public static final String IMAGE_PREFIX =
6768
System.getenv().getOrDefault("TARANTOOL_REGISTRY", "") + "tarantool/tarantool";
69+
public static final DockerImageName DOCKER_IMAGE =
70+
DockerImageName.parse(String.format("%s:%s", IMAGE_PREFIX, TARANTOOL_VERSION));
6871
private static final Network NETWORK = Network.newNetwork();
6972

7073
/**
@@ -78,7 +81,7 @@ public final class TarantoolContainerClientHelper {
7881
private static final String EXECUTE_COMMAND_ERROR_TEMPLATE =
7982
"Executed command \"%s\" with exit code %d, stderr: \"%s\", stdout: \"%s\"";
8083

81-
private static final String ECHO_COMMAND = "echo \"%s\" | tt connect %s:%s@%s:%d";
84+
private static final String ECHO_COMMAND = "echo \"%s\" | %s connect %s:%s@%s:%d";
8285
private static final String COMMAND_TEMPLATE =
8386
"echo \" "
8487
+ " print(require('yaml').encode( "
@@ -164,7 +167,7 @@ public static Container.ExecResult executeCommand(TarantoolContainer<?> containe
164167
command = command.replace("\"", "\\\"");
165168

166169
String bashCommand =
167-
String.format(ECHO_COMMAND, command, API_USER, CREDS.get(API_USER), "localhost", 3301);
170+
String.format(ECHO_COMMAND, command, TT_COMMAND, API_USER, CREDS.get(API_USER), "localhost", 3301);
168171

169172
return container.execInContainer("/bin/sh", "-c", bashCommand);
170173
}
@@ -179,7 +182,7 @@ public static Container.ExecResult executeCommand(
179182
command = command.replace("\"", "\\\"");
180183

181184
String bashCommand =
182-
String.format(ECHO_COMMAND, command, API_USER, CREDS.get(API_USER), "localhost", port);
185+
String.format(ECHO_COMMAND, command, TT_COMMAND, API_USER, CREDS.get(API_USER), "localhost", port);
183186

184187
return container.execInContainer("/bin/sh", "-c", bashCommand);
185188
}
@@ -208,8 +211,6 @@ public static <T> T executeCommandDecoded(TarantoolContainer<?> container, Strin
208211
}
209212

210213
public static TarantoolContainer<?> createTarantoolContainer(Integer... exposedPorts) {
211-
DockerImageName dockerImage =
212-
DockerImageName.parse(String.format("%s:%s", IMAGE_PREFIX, TARANTOOL_VERSION));
213214
Path initScriptPath = null;
214215
TarantoolContainer<?> container;
215216
try {
@@ -227,9 +228,9 @@ public static TarantoolContainer<?> createTarantoolContainer(Integer... exposedP
227228
String containerName = String.format("node-%s", UUID.randomUUID());
228229
container =
229230
switch (Character.getNumericValue(TARANTOOL_VERSION.charAt(0))) {
230-
case 2 -> Tarantool2Container.builder(dockerImage, initScriptPath).build();
231+
case 2 -> Tarantool2Container.builder(DOCKER_IMAGE, initScriptPath).build();
231232
case 3 ->
232-
new Tarantool3Container(dockerImage, containerName)
233+
new Tarantool3Container(DOCKER_IMAGE, containerName)
233234
.withConfigPath(createConfig(containerName, exposedPorts))
234235
.withNetwork(NETWORK)
235236
.waitingFor(

0 commit comments

Comments
 (0)