@@ -75,7 +75,7 @@ RUN set -eux \
7575{%- endif %}
7676
7777# ##
78- # ## Add common build tools
78+ # ## Add common tools
7979# ##
8080RUN set -eux \
8181 && DEBIAN_FRONTEND=noninteractive apt-get update \
@@ -90,6 +90,32 @@ RUN set -eux \
9090 redis-tools \
9191 sqlite3
9292
93+ {% set tools_apt = [] -%}
94+ {%- for tool in base_software_enabled -%}
95+ {%- if ('disabled' not in base_software_available[tool]) or (php_version not in base_software_available[tool]['disabled' ]) -%}
96+ {%- if fn.tool_apt_get_package(php_version, tool, base_software_available) -%}
97+ {{- tools_apt.append(fn.tool_apt_get_package(php_version, tool, base_software_available)) -}}
98+ {%- endif -%}
99+ {%- endif -%}
100+ {%- endfor %}
101+
102+ {%- if tools_apt -%}
103+ # ##
104+ # ## Install tools type: apt
105+ # ##
106+ RUN set -eux \
107+ && DEBIAN_FRONTEND=noninteractive apt-get update \
108+ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
109+ {{- "\n " -}}
110+ {%- if tools_apt -%}
111+ {{- "\t\t # ---------- type: apt ----------\n " -}}
112+ {%- for apt in tools_apt | unique | sort -%}
113+ {{- "\t\t " + apt + " \\ " + "\n " -}}
114+ {%- endfor -%}
115+ {%- endif -%}
116+ {{- "\t " -}}&& rm -rf /var/lib/apt/lists/*{{- "\n " -}}
117+ {% endif %}
118+
93119# ##
94120# ## Devilbox required cli tools from group_vars (slim.yml)
95121# ##
@@ -226,6 +252,32 @@ RUN set -eux \
226252FROM devilbox/php-fpm:{{ php_version }}-prod as devilbox-slim-base
227253ARG ARCH
228254
255+ {% set tools_apt = [] -%}
256+ {%- for tool in base_software_enabled -%}
257+ {%- if ('disabled' not in base_software_available[tool]) or (php_version not in base_software_available[tool]['disabled' ]) -%}
258+ {%- if fn.tool_apt_get_package(php_version, tool, base_software_available) -%}
259+ {{- tools_apt.append(fn.tool_apt_get_package(php_version, tool, base_software_available)) -}}
260+ {%- endif -%}
261+ {%- endif -%}
262+ {%- endfor %}
263+
264+ {%- if tools_apt -%}
265+ # ##
266+ # ## Install tools type: apt
267+ # ##
268+ RUN set -eux \
269+ && DEBIAN_FRONTEND=noninteractive apt-get update \
270+ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests \
271+ {{- "\n " -}}
272+ {%- if tools_apt -%}
273+ {{- "\t\t # ---------- type: apt ----------\n " -}}
274+ {%- for apt in tools_apt | unique | sort -%}
275+ {{- "\t\t " + apt + " \\ " + "\n " -}}
276+ {%- endfor -%}
277+ {%- endif -%}
278+ {{- "\t " -}}&& rm -rf /var/lib/apt/lists/*{{- "\n " -}}
279+ {% endif %}
280+
229281# ##
230282# ## Copy shared libraries (required by MongoDB, MySQL, PostgreSQL and Redis)
231283# ##
0 commit comments