Skip to content

Commit 3ee68f5

Browse files
committed
[CI] Refactors duplicated Dockerfile
1 parent ff34554 commit 3ee68f5

File tree

3 files changed

+27
-43
lines changed

3 files changed

+27
-43
lines changed

.buildkite/Dockerfile

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,33 @@
11
ARG RUBY_VERSION=${RUBY_VERSION:-3.1}
22
FROM ruby:$RUBY_VERSION
33

4-
ENV QUIET=true
5-
ENV CI=true
4+
# Default UID/GID to 1000
5+
# it can be overridden at build time
6+
ARG BUILDER_UID=1000
7+
ARG BUILDER_GID=1000
8+
ENV BUILDER_USER elastic
9+
ENV BUILDER_GROUP elastic
10+
11+
ARG QUIET=${QUIET:-true}
12+
ARG CI=${CI:-false}
13+
ENV QUIET=$QUIET
14+
ENV CI=$CI
615

716
# Install required tools
8-
RUN apt-get -q update && apt-get -y install zip curl
17+
RUN apt-get -q update \
18+
&& apt-get -y install zip curl
19+
20+
# Create user
21+
RUN groupadd --system -g ${BUILDER_GID} ${BUILDER_GROUP} \
22+
&& useradd --system --shell /bin/bash -u ${BUILDER_UID} -g ${BUILDER_GROUP} -d /var/lib/elastic -m elastic 1>/dev/null 2>/dev/null \
23+
&& mkdir -p /usr/src/app && touch /Gemfile.lock \
24+
&& chown -R ${BUILDER_USER}:${BUILDER_GROUP} /usr/src/app /Gemfile.lock
25+
26+
COPY --chown=$BUILDER_USER:$BUILDER_GROUP . .
927

1028
WORKDIR /usr/src/app
11-
COPY . .
29+
30+
USER ${BUILDER_USER}:${BUILDER_GROUP}
1231

1332
RUN bundle install \
1433
&& bundle exec rake bundle:clean \

.ci/Dockerfile

-35
This file was deleted.

.ci/make.sh

+4-4
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,14 @@ output_folder=".ci/output"
3838
codegen_folder=".ci/output"
3939
OUTPUT_DIR="$repo/${output_folder}"
4040
REPO_BINDING="${OUTPUT_DIR}:/sln/${output_folder}"
41-
RUBY_TEST_VERSION=${RUBY_TEST_VERSION-3.1}
41+
RUBY_VERSION=${RUBY_VERSION-3.1}
4242
WORKFLOW=${WORKFLOW-staging}
4343
mkdir -p "$OUTPUT_DIR"
4444

4545
echo -e "\033[34;1mINFO:\033[0m PRODUCT ${product}\033[0m"
4646
echo -e "\033[34;1mINFO:\033[0m VERSION ${STACK_VERSION}\033[0m"
4747
echo -e "\033[34;1mINFO:\033[0m OUTPUT_DIR ${OUTPUT_DIR}\033[0m"
48-
echo -e "\033[34;1mINFO:\033[0m RUBY_TEST_VERSION ${RUBY_TEST_VERSION}\033[0m"
48+
echo -e "\033[34;1mINFO:\033[0m RUBY_VERSION ${RUBY_VERSION}\033[0m"
4949

5050
case $CMD in
5151
clean)
@@ -126,7 +126,7 @@ echo -e "\033[1m>>>>> Build [elastic/elasticsearch-ruby container] >>>>>>>>>>>>>
126126
# ------------------------------------------------------- #
127127

128128
echo -e "\033[34;1mINFO: building $product container\033[0m"
129-
docker build --build-arg BUILDER_UID="$(id -u)" --file .ci/Dockerfile --tag ${product} .
129+
docker build --no-cache --build-arg BUILDER_UID="$(id -u)" --file .buildkite/Dockerfile --tag ${product} .
130130

131131
# ------------------------------------------------------- #
132132
# Run the Container
@@ -142,7 +142,7 @@ args_string="${args_string// /,}"
142142

143143
docker run \
144144
-u "$(id -u)" \
145-
--env "RUBY_TEST_VERSION=${RUBY_TEST_VERSION}" \
145+
--env "RUBY_VERSION=${RUBY_VERSION}" \
146146
--env "WORKFLOW=${WORKFLOW}" \
147147
--name test-runner \
148148
--volume "${REPO_BINDING}" \

0 commit comments

Comments
 (0)