Skip to content

Commit 3c7163d

Browse files
akudiyardkasimovskiy
authored andcommitted
Propagate log directory to cartridge-cli command
1 parent a24abc1 commit 3c7163d

File tree

2 files changed

+24
-11
lines changed

2 files changed

+24
-11
lines changed

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,10 @@ public class TarantoolCartridgeContainer extends GenericContainer<TarantoolCartr
102102
private static final String ENV_TARANTOOL_SERVER_GID = "TARANTOOL_SERVER_GID";
103103
private static final String ENV_TARANTOOL_WORKDIR = "TARANTOOL_WORKDIR";
104104
private static final String ENV_TARANTOOL_RUNDIR = "TARANTOOL_RUNDIR";
105+
private static final String ENV_TARANTOOL_LOGDIR = "TARANTOOL_LOGDIR";
105106
private static final String ENV_TARANTOOL_DATADIR = "TARANTOOL_DATADIR";
106107
private static final String ENV_TARANTOOL_INSTANCES_FILE = "TARANTOOL_INSTANCES_FILE";
108+
private static final String ENV_TARANTOOL_CLUSTER_COOKIE = "TARANTOOL_CLUSTER_COOKIE";
107109

108110
private final CartridgeConfigParser instanceFileParser;
109111
private final TarantoolContainerClientHelper clientHelper;
@@ -239,8 +241,10 @@ private static Map<String, String> mergeBuildArguments(Map<String, String> build
239241
ENV_TARANTOOL_SERVER_GID,
240242
ENV_TARANTOOL_WORKDIR,
241243
ENV_TARANTOOL_RUNDIR,
244+
ENV_TARANTOOL_LOGDIR,
242245
ENV_TARANTOOL_DATADIR,
243-
ENV_TARANTOOL_INSTANCES_FILE
246+
ENV_TARANTOOL_INSTANCES_FILE,
247+
ENV_TARANTOOL_CLUSTER_COOKIE
244248
)) {
245249
String variableValue = System.getenv(envVariable);
246250
if (variableValue != null && !args.containsKey(envVariable)) {

src/main/resources/Dockerfile

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
ARG TARANTOOL_VERSION=2.10.5
1+
ARG TARANTOOL_VERSION=2.11.0
22
FROM tarantool/tarantool:${TARANTOOL_VERSION}-centos7 AS cartridge-base
33

44
# system preparations because docker mount directory as a root
@@ -8,19 +8,28 @@ USER $TARANTOOL_SERVER_USER:$TARANTOOL_SERVER_GROUP
88
RUN groupadd $TARANTOOL_SERVER_GROUP && useradd -m -s /bin/bash $TARANTOOL_SERVER_USER || true
99

1010
# install dependencies
11-
RUN yum -y install cmake make gcc gcc-c++ git unzip cartridge-cli && \
11+
# a yum bug requires setting ulimit, see https://bugzilla.redhat.com/show_bug.cgi?id=1537564
12+
RUN ulimit -n 1024 && \
13+
yum -y install cmake make gcc gcc-c++ git unzip cartridge-cli && \
1214
yum clean all
1315
RUN cartridge version
1416

15-
# build
17+
# build and run
18+
FROM cartridge-base AS cartridge-app
1619
ARG CARTRIDGE_SRC_DIR="cartridge"
1720
ARG TARANTOOL_WORKDIR="/app"
21+
ARG TARANTOOL_RUNDIR="/tmp/run"
22+
ARG TARANTOOL_DATADIR="/tmp/data"
23+
ARG TARANTOOL_LOGDIR="/tmp/log"
24+
ARG TARANTOOL_INSTANCES_FILE="./instances.yml"
25+
ARG TARANTOOL_CLUSTER_COOKIE="testapp-cluster-cookie"
26+
ENV TARANTOOL_WORKDIR=$TARANTOOL_WORKDIR
27+
ENV TARANTOOL_RUNDIR=$TARANTOOL_RUNDIR
28+
ENV TARANTOOL_DATADIR=$TARANTOOL_DATADIR
29+
ENV TARANTOOL_LOGDIR=$TARANTOOL_LOGDIR
30+
ENV TARANTOOL_INSTANCES_FILE=$TARANTOOL_INSTANCES_FILE
31+
ENV TARANTOOL_CLUSTER_COOKIE=$TARANTOOL_CLUSTER_COOKIE
1832
COPY $CARTRIDGE_SRC_DIR $TARANTOOL_WORKDIR
1933
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-
26-
CMD cartridge build && cartridge start --run-dir=$TARANTOOL_RUNDIR --data-dir=$TARANTOOL_DATADIR --cfg=$TARANTOOL_INSTANCES_FILE
34+
CMD cartridge build && cartridge start --run-dir=$TARANTOOL_RUNDIR --data-dir=$TARANTOOL_DATADIR \
35+
--log-dir=$TARANTOOL_LOGDIR --cfg=$TARANTOOL_INSTANCES_FILE

0 commit comments

Comments
 (0)