Skip to content

Commit c2afbc7

Browse files
committed
Remove ssl support from TarantoolCartridgeContainer
1 parent 67b4481 commit c2afbc7

File tree

5 files changed

+28
-20
lines changed

5 files changed

+28
-20
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
## [Unreleased]
44
- Fix problem if topology isn't applied correctly
55
- Bump testcontainers to 1.18.0
6+
- Move rocks building in build phase
67
- **[breaking change]** Update executeScript and executeCommand methods to execute code viva execInContainer
78
(now it returns yaml string in Container.ExecResult not CompletableFuture).
89
- **[breaking change]** Remove TarantoolContainer containers with TarantoolClientBuilder parameter.

src/main/java/org/testcontainers/containers/TarantoolCartridgeContainer.java

+10-5
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ public TarantoolCartridgeContainer(String dockerFile, String buildImageName,
188188
*/
189189
public TarantoolCartridgeContainer(String dockerFile, String buildImageName, String instancesFile,
190190
String topologyConfigurationFile, final Map<String, String> buildArgs) {
191-
this(buildImage(dockerFile, buildImageName), instancesFile, topologyConfigurationFile, buildArgs);
191+
this(buildImage(dockerFile, buildImageName, buildArgs), instancesFile, topologyConfigurationFile, buildArgs);
192192
}
193193

194194
// todo add SSL and mTLS cartridge test
@@ -256,12 +256,17 @@ private static Map<String, String> mergeBuildArguments(Map<String, String> build
256256
return args;
257257
}
258258

259-
private static ImageFromDockerfile buildImage(String dockerFile, String buildImageName) {
259+
private static ImageFromDockerfile buildImage(String dockerFile, String buildImageName,
260+
final Map<String, String> buildArgs) {
261+
ImageFromDockerfile image;
260262
if (buildImageName != null && !buildImageName.isEmpty()) {
261-
return new ImageFromDockerfile(buildImageName, false)
262-
.withFileFromClasspath("Dockerfile", dockerFile);
263+
image = new ImageFromDockerfile(buildImageName, false);
264+
} else {
265+
image = new ImageFromDockerfile();
263266
}
264-
return new ImageFromDockerfile().withFileFromClasspath("Dockerfile", dockerFile);
267+
return image.withFileFromClasspath("Dockerfile", dockerFile)
268+
.withFileFromClasspath("cartridge", buildArgs.get("CARTRIDGE_SRC_DIR") == null ?
269+
"cartridge" : buildArgs.get("CARTRIDGE_SRC_DIR"));
265270
}
266271

267272
// todo add SSL and mTLS cartridge test

src/main/resources/Dockerfile

+17-12
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,26 @@
11
ARG TARANTOOL_VERSION=2.10.5
2-
FROM tarantool/tarantool:${TARANTOOL_VERSION}-centos7 AS tarantool-base
2+
FROM tarantool/tarantool:${TARANTOOL_VERSION}-centos7 AS cartridge-base
3+
4+
# system preparations because docker mount directory as a root
35
ARG TARANTOOL_SERVER_USER="root"
46
ARG TARANTOOL_SERVER_GROUP="root"
5-
ARG TARANTOOL_WORKDIR="/app"
6-
ARG TARANTOOL_RUNDIR="/tmp/run"
7-
ARG TARANTOOL_DATADIR="/tmp/data"
8-
ARG TARANTOOL_INSTANCES_FILE="./instances.yml"
9-
ENV TARANTOOL_WORKDIR=$TARANTOOL_WORKDIR
10-
ENV TARANTOOL_RUNDIR=$TARANTOOL_RUNDIR
11-
ENV TARANTOOL_DATADIR=$TARANTOOL_DATADIR
12-
ENV TARANTOOL_INSTANCES_FILE=$TARANTOOL_INSTANCES_FILE
7+
USER $TARANTOOL_SERVER_USER:$TARANTOOL_SERVER_GROUP
8+
RUN groupadd $TARANTOOL_SERVER_GROUP && useradd -m -s /bin/bash $TARANTOOL_SERVER_USER || true
9+
10+
# install dependencies
1311
RUN yum -y install cmake make gcc gcc-c++ git unzip cartridge-cli && \
1412
yum clean all
15-
RUN groupadd $TARANTOOL_SERVER_GROUP && useradd -m -s /bin/bash $TARANTOOL_SERVER_USER || true
16-
USER $TARANTOOL_SERVER_USER:$TARANTOOL_SERVER_GROUP
1713
RUN cartridge version
1814

19-
FROM tarantool-base AS cartridge-base
15+
# build
16+
ARG CARTRIDGE_SRC_DIR="cartridge"
17+
ARG TARANTOOL_WORKDIR="/app"
18+
COPY $CARTRIDGE_SRC_DIR $TARANTOOL_WORKDIR
2019
WORKDIR $TARANTOOL_WORKDIR
20+
RUN cartridge build --verbose
21+
22+
ENV TARANTOOL_RUNDIR="/tmp/run"
23+
ENV TARANTOOL_DATADIR="/tmp/data"
24+
ENV TARANTOOL_INSTANCES_FILE="./instances.yml"
25+
2126
CMD cartridge build && cartridge start --run-dir=$TARANTOOL_RUNDIR --data-dir=$TARANTOOL_DATADIR --cfg=$TARANTOOL_INSTANCES_FILE

src/test/java/org/testcontainers/containers/TarantoolCartridgeBootstrapFromLuaWithFixedPortsTest.java

-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ public class TarantoolCartridgeBootstrapFromLuaWithFixedPortsTest {
2525
"Dockerfile",
2626
"cartridge/instances_fixedport.yml",
2727
"cartridge/topology_fixedport.lua")
28-
.withDirectoryBinding("cartridge")
2928
.withEnv("TARANTOOL_INSTANCES_FILE", "instances_fixedport.yml")
3029
.withStartupTimeout(Duration.ofSeconds(300))
3130
.withUseFixedPorts(true)
@@ -46,7 +45,6 @@ public void test_retryingSetupTopology_shouldWork() {
4645
"Dockerfile",
4746
"cartridge/instances.yml",
4847
"cartridge/incorrect_topology.lua")
49-
.withDirectoryBinding("cartridge")
5048
.withLogConsumer(new Slf4jLogConsumer(
5149
LoggerFactory.getLogger(TarantoolCartridgeBootstrapFromLuaWithFixedPortsTest.class)))) {
5250
ContainerLaunchException ex = assertThrows(ContainerLaunchException.class, testContainer::start);

src/test/java/org/testcontainers/containers/TarantoolCartridgeBootstrapFromYamlTest.java

-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ public class TarantoolCartridgeBootstrapFromYamlTest {
2626
"Dockerfile",
2727
"cartridge/instances.yml",
2828
"cartridge/replicasets.yml")
29-
.withCopyFileToContainer(MountableFile.forClasspathResource("cartridge"), "/app")
3029
.withStartupTimeout(Duration.ofSeconds(300))
3130
.withLogConsumer(new Slf4jLogConsumer(
3231
LoggerFactory.getLogger(TarantoolCartridgeBootstrapFromYamlTest.class)));

0 commit comments

Comments
 (0)