From 257583c2bedab8c0662a906d83330d2612fbe503 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20-=20Le=20Filament?= <remi@le-filament.com>
Date: Wed, 10 Aug 2022 17:04:28 +0200
Subject: [PATCH] [ADD] multilayer build with wheels

---
 16.0.Dockerfile | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/16.0.Dockerfile b/16.0.Dockerfile
index e420c21..a391334 100644
--- a/16.0.Dockerfile
+++ b/16.0.Dockerfile
@@ -1,7 +1,16 @@
-FROM python:3.10-slim-bullseye
+FROM python:3.10-slim-bullseye AS builder
+RUN set -x; \
+        apt-get update &&\
+        apt-get install -y --no-install-recommends build-essential libldap2-dev libpq-dev libsasl2-dev &&\
+        pip install wheel &&\
+        pip wheel --wheel-dir=/svc/wheels -r https://raw.githubusercontent.com/odoo/odoo/master/requirements.txt &&\
+        pip wheel --wheel-dir=/svc/wheels phonenumbers simplejson openupgradelib PyYAML
+
+
+FROM python:3.10-slim-bullseye AS final
 MAINTAINER Le Filament <https://le-filament.com>
 
-ENV APT_DEPS='build-essential libldap2-dev libpq-dev libsasl2-dev' \
+ENV APT_DEPS='' \
     LANG=C.UTF-8 \
     LC_ALL=C.UTF-8 \
     PGDATABASE=odoo
@@ -22,14 +31,14 @@ RUN set -x; \
         apt-get update &&\
         apt-get install -y --no-install-recommends ./wkhtmltox.deb &&\
         apt-get install -y --no-install-recommends postgresql-client &&\
-        apt-get install -y --no-install-recommends ${APT_DEPS} &&\
-        # pip3 install -r https://raw.githubusercontent.com/OCA/OCB/16.0/requirements.txt &&\
-        pip3 install -r https://raw.githubusercontent.com/odoo/odoo/master/requirements.txt &&\
-        pip3 install phonenumbers simplejson openupgradelib pdfminer.six PyYAML zxcvbn &&\
         apt-get -y purge ${APT_DEPS} &&\
         apt-get -y autoremove &&\
         rm -rf /var/lib/apt/lists/* wkhtmltox.deb
 
+COPY --from=builder /svc /svc
+RUN pip3 install --no-index --find-links=/svc/wheels -r https://raw.githubusercontent.com/odoo/odoo/master/requirements.txt &&\
+        pip3 install --no-index --find-links=/svc/wheels phonenumbers simplejson openupgradelib PyYAML
+
 # Add Git Known Hosts
 COPY ./ssh_known_git_hosts /root/.ssh/known_hosts
 
-- 
GitLab