@@ -62,9 +62,14 @@ 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 =
66+ System .getenv ().getOrDefault ("TARANTOOL_VERSION" , "2.11.2-ubuntu20.04" );
67+ private static final String TT_COMMAND =
68+ TARANTOOL_VERSION .startsWith ("2." ) ? "tarantoolctl" : "tt" ;
6669 public static final String IMAGE_PREFIX =
6770 System .getenv ().getOrDefault ("TARANTOOL_REGISTRY" , "" ) + "tarantool/tarantool" ;
71+ public static final DockerImageName DOCKER_IMAGE =
72+ DockerImageName .parse (String .format ("%s:%s" , IMAGE_PREFIX , TARANTOOL_VERSION ));
6873 private static final Network NETWORK = Network .newNetwork ();
6974
7075 /**
@@ -78,7 +83,7 @@ public final class TarantoolContainerClientHelper {
7883 private static final String EXECUTE_COMMAND_ERROR_TEMPLATE =
7984 "Executed command \" %s\" with exit code %d, stderr: \" %s\" , stdout: \" %s\" " ;
8085
81- private static final String ECHO_COMMAND = "echo \" %s\" | tt connect %s:%s@%s:%d" ;
86+ private static final String ECHO_COMMAND = "echo \" %s\" | %s connect %s:%s@%s:%d" ;
8287 private static final String COMMAND_TEMPLATE =
8388 "echo \" "
8489 + " print(require('yaml').encode( "
@@ -164,7 +169,8 @@ public static Container.ExecResult executeCommand(TarantoolContainer<?> containe
164169 command = command .replace ("\" " , "\\ \" " );
165170
166171 String bashCommand =
167- String .format (ECHO_COMMAND , command , API_USER , CREDS .get (API_USER ), "localhost" , 3301 );
172+ String .format (
173+ ECHO_COMMAND , command , TT_COMMAND , API_USER , CREDS .get (API_USER ), "localhost" , 3301 );
168174
169175 return container .execInContainer ("/bin/sh" , "-c" , bashCommand );
170176 }
@@ -179,7 +185,8 @@ public static Container.ExecResult executeCommand(
179185 command = command .replace ("\" " , "\\ \" " );
180186
181187 String bashCommand =
182- String .format (ECHO_COMMAND , command , API_USER , CREDS .get (API_USER ), "localhost" , port );
188+ String .format (
189+ ECHO_COMMAND , command , TT_COMMAND , API_USER , CREDS .get (API_USER ), "localhost" , port );
183190
184191 return container .execInContainer ("/bin/sh" , "-c" , bashCommand );
185192 }
@@ -208,8 +215,6 @@ public static <T> T executeCommandDecoded(TarantoolContainer<?> container, Strin
208215 }
209216
210217 public static TarantoolContainer <?> createTarantoolContainer (Integer ... exposedPorts ) {
211- DockerImageName dockerImage =
212- DockerImageName .parse (String .format ("%s:%s" , IMAGE_PREFIX , TARANTOOL_VERSION ));
213218 Path initScriptPath = null ;
214219 TarantoolContainer <?> container ;
215220 try {
@@ -227,9 +232,9 @@ public static TarantoolContainer<?> createTarantoolContainer(Integer... exposedP
227232 String containerName = String .format ("node-%s" , UUID .randomUUID ());
228233 container =
229234 switch (Character .getNumericValue (TARANTOOL_VERSION .charAt (0 ))) {
230- case 2 -> Tarantool2Container .builder (dockerImage , initScriptPath ).build ();
235+ case 2 -> Tarantool2Container .builder (DOCKER_IMAGE , initScriptPath ).build ();
231236 case 3 ->
232- new Tarantool3Container (dockerImage , containerName )
237+ new Tarantool3Container (DOCKER_IMAGE , containerName )
233238 .withConfigPath (createConfig (containerName , exposedPorts ))
234239 .withNetwork (NETWORK )
235240 .waitingFor (
0 commit comments