Skip to content

Commit 725f52e

Browse files
committed
Fix shared libs for mongodb
1 parent 796b04b commit 725f52e

15 files changed

Lines changed: 356 additions & 14 deletions

.ansible/DOCKERFILES/Dockerfile-slim.j2

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,27 @@ RUN set -eux \
5353
{%- endfor -%}
5454
{{ "\n\t" }}&& true
5555

56+
{% set build_deps = [] -%}
57+
{%- for ext in base_software_enabled -%}
58+
{%- for dep in fn.get_build_dep(php_version, ext, base_software_available) | from_json -%}
59+
{%- if dep -%}
60+
{{- build_deps.append(dep) -}}
61+
{%- endif -%}
62+
{%- endfor -%}
63+
{%- endfor -%}
64+
{%- if build_deps -%}
65+
###
66+
### Install build_dep
67+
###
68+
RUN set -eux \
69+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
70+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
71+
{% for build_dep in build_deps | unique | sort %}
72+
{{ build_dep }} \
73+
{% endfor %}
74+
&& rm -rf /var/lib/apt/lists/*
75+
{%- endif %}
76+
5677
###
5778
### Add common build tools
5879
###
@@ -117,7 +138,7 @@ RUN set -eux \
117138
\
118139
&& LIB_GNU="libreadline" \
119140
&& USR_LIB="libsnappy libtcmalloc libv8" \
120-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
141+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
121142
\
122143
&& for lib in ${LIB_GNU}; do \
123144
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \

.ansible/group_vars/all/slim.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,14 @@ base_software_available:
312312
else \
313313
mongofiles --version; \
314314
fi \
315+
\
316+
&& if echo '{{ php_version }}' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
317+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
318+
mongo --version; \
319+
fi \
320+
else \
321+
mongo --version; \
322+
fi \
315323
all:
316324
type: custom
317325
pre: |
@@ -323,6 +331,7 @@ base_software_available:
323331
mongodb-org-tools \
324332
mongodb-org-shell \
325333
post: rm -rf /var/lib/apt/lists/*
334+
build_dep: [libsnappy-dev] # Required to copy libsnappy.so to next stage
326335
7.0:
327336
type: custom
328337
pre: apt-get update

Dockerfiles/slim/Dockerfile-5.2

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -97,6 +105,14 @@ RUN set -eux \
97105
mongofiles --version; \
98106
fi \
99107
\
108+
&& if echo '5.2' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
109+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
110+
mongo --version; \
111+
fi \
112+
else \
113+
mongo --version; \
114+
fi \
115+
\
100116
&& true
101117

102118
# -------------------- mysqldumpsecure --------------------
@@ -163,7 +179,7 @@ RUN set -eux \
163179
\
164180
&& LIB_GNU="libreadline" \
165181
&& USR_LIB="libsnappy libtcmalloc libv8" \
166-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
182+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
167183
\
168184
&& for lib in ${LIB_GNU}; do \
169185
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -419,6 +435,14 @@ RUN set -eux \
419435
mongofiles --version; \
420436
fi \
421437
\
438+
&& if echo '5.2' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
439+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
440+
mongo --version; \
441+
fi \
442+
else \
443+
mongo --version; \
444+
fi \
445+
\
422446
&& true
423447

424448
# -------------------- mysqldumpsecure --------------------

Dockerfiles/slim/Dockerfile-5.3

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -97,6 +105,14 @@ RUN set -eux \
97105
mongofiles --version; \
98106
fi \
99107
\
108+
&& if echo '5.3' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
109+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
110+
mongo --version; \
111+
fi \
112+
else \
113+
mongo --version; \
114+
fi \
115+
\
100116
&& true
101117

102118
# -------------------- mysqldumpsecure --------------------
@@ -163,7 +179,7 @@ RUN set -eux \
163179
\
164180
&& LIB_GNU="libreadline" \
165181
&& USR_LIB="libsnappy libtcmalloc libv8" \
166-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
182+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
167183
\
168184
&& for lib in ${LIB_GNU}; do \
169185
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -419,6 +435,14 @@ RUN set -eux \
419435
mongofiles --version; \
420436
fi \
421437
\
438+
&& if echo '5.3' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
439+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
440+
mongo --version; \
441+
fi \
442+
else \
443+
mongo --version; \
444+
fi \
445+
\
422446
&& true
423447

424448
# -------------------- mysqldumpsecure --------------------

Dockerfiles/slim/Dockerfile-5.4

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -97,6 +105,14 @@ RUN set -eux \
97105
mongofiles --version; \
98106
fi \
99107
\
108+
&& if echo '5.4' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
109+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
110+
mongo --version; \
111+
fi \
112+
else \
113+
mongo --version; \
114+
fi \
115+
\
100116
&& true
101117

102118
# -------------------- mysqldumpsecure --------------------
@@ -163,7 +179,7 @@ RUN set -eux \
163179
\
164180
&& LIB_GNU="libreadline" \
165181
&& USR_LIB="libsnappy libtcmalloc libv8" \
166-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
182+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
167183
\
168184
&& for lib in ${LIB_GNU}; do \
169185
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -419,6 +435,14 @@ RUN set -eux \
419435
mongofiles --version; \
420436
fi \
421437
\
438+
&& if echo '5.4' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
439+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
440+
mongo --version; \
441+
fi \
442+
else \
443+
mongo --version; \
444+
fi \
445+
\
422446
&& true
423447

424448
# -------------------- mysqldumpsecure --------------------

Dockerfiles/slim/Dockerfile-5.5

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -97,6 +105,14 @@ RUN set -eux \
97105
mongofiles --version; \
98106
fi \
99107
\
108+
&& if echo '5.5' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
109+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
110+
mongo --version; \
111+
fi \
112+
else \
113+
mongo --version; \
114+
fi \
115+
\
100116
&& true
101117

102118
# -------------------- mysqldumpsecure --------------------
@@ -163,7 +179,7 @@ RUN set -eux \
163179
\
164180
&& LIB_GNU="libreadline" \
165181
&& USR_LIB="libsnappy libtcmalloc libv8" \
166-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
182+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
167183
\
168184
&& for lib in ${LIB_GNU}; do \
169185
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -419,6 +435,14 @@ RUN set -eux \
419435
mongofiles --version; \
420436
fi \
421437
\
438+
&& if echo '5.5' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
439+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
440+
mongo --version; \
441+
fi \
442+
else \
443+
mongo --version; \
444+
fi \
445+
\
422446
&& true
423447

424448
# -------------------- mysqldumpsecure --------------------

Dockerfiles/slim/Dockerfile-5.6

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -101,6 +109,14 @@ RUN set -eux \
101109
mongofiles --version; \
102110
fi \
103111
\
112+
&& if echo '5.6' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
113+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
114+
mongo --version; \
115+
fi \
116+
else \
117+
mongo --version; \
118+
fi \
119+
\
104120
&& true
105121

106122
# -------------------- mysqldumpsecure --------------------
@@ -167,7 +183,7 @@ RUN set -eux \
167183
\
168184
&& LIB_GNU="libreadline" \
169185
&& USR_LIB="libsnappy libtcmalloc libv8" \
170-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
186+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
171187
\
172188
&& for lib in ${LIB_GNU}; do \
173189
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -423,6 +439,14 @@ RUN set -eux \
423439
mongofiles --version; \
424440
fi \
425441
\
442+
&& if echo '5.6' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
443+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
444+
mongo --version; \
445+
fi \
446+
else \
447+
mongo --version; \
448+
fi \
449+
\
426450
&& true
427451

428452
# -------------------- mysqldumpsecure --------------------

Dockerfiles/slim/Dockerfile-7.0

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,14 @@ RUN set -eux \
3737
&& true
3838

3939
###
40+
### Install build_dep
41+
###
42+
RUN set -eux \
43+
&& DEBIAN_FRONTEND=noninteractive apt-get update \
44+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
45+
libsnappy-dev \
46+
&& rm -rf /var/lib/apt/lists/*
47+
###
4048
### Add common build tools
4149
###
4250
RUN set -eux \
@@ -101,6 +109,14 @@ RUN set -eux \
101109
mongofiles --version; \
102110
fi \
103111
\
112+
&& if echo '7.0' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
113+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
114+
mongo --version; \
115+
fi \
116+
else \
117+
mongo --version; \
118+
fi \
119+
\
104120
&& true
105121

106122
# -------------------- mysqldumpsecure --------------------
@@ -167,7 +183,7 @@ RUN set -eux \
167183
\
168184
&& LIB_GNU="libreadline" \
169185
&& USR_LIB="libsnappy libtcmalloc libv8" \
170-
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit" \
186+
&& USR_LIB_GNU="liblua libpq libpcrecpp libboost libjemalloc libunwind libhiredis libedit libyaml-cpp libstemmer libsnappy libpcap" \
171187
\
172188
&& for lib in ${LIB_GNU}; do \
173189
if ls -1 "${LIB_GNU_DIR}/" | grep "^${lib}" >/dev/null; then \
@@ -423,6 +439,14 @@ RUN set -eux \
423439
mongofiles --version; \
424440
fi \
425441
\
442+
&& if echo '7.0' | grep -E '^(5.2|5.3|5.4|5.5)$' >/dev/null; then \
443+
if [ "$(dpkg-architecture --query DEB_BUILD_ARCH)" = "amd64" ]; then \
444+
mongo --version; \
445+
fi \
446+
else \
447+
mongo --version; \
448+
fi \
449+
\
426450
&& true
427451

428452
# -------------------- mysqldumpsecure --------------------

0 commit comments

Comments
 (0)