From f4110f2d70cf965346196d5cdcb27aa346fbe422 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Mon, 25 Nov 2024 14:39:15 +0100 Subject: [PATCH 1/7] fix: new flovar --- .github/workflows/build.yaml | 2 +- 12.0/Dockerfile | 81 ---------------------------- 12.0/MANIFEST.in | 1 - 12.0/base_requirements.txt | 95 --------------------------------- 12.0/extra_requirements.txt | 46 ---------------- 12.0/src_requirements.txt | 8 --- 12.0/templates/odoo.cfg.tmpl | 51 ------------------ 13.0/Dockerfile | 80 ---------------------------- 13.0/MANIFEST.in | 1 - 13.0/base_requirements.txt | 96 ---------------------------------- 13.0/extra_requirements.txt | 46 ---------------- 13.0/src_requirements.txt | 8 --- 13.0/templates/odoo.cfg.tmpl | 51 ------------------ 14.0/Dockerfile | 81 ---------------------------- 14.0/MANIFEST.in | 1 - 14.0/base_requirements.txt | 94 --------------------------------- 14.0/extra_requirements.txt | 45 ---------------- 14.0/src_requirements.txt | 8 --- 14.0/templates/odoo.cfg.tmpl | 51 ------------------ 15.0/Dockerfile | 6 ++- 15.0/base_requirements.txt | 46 +--------------- 15.0/extra_requirements.txt | 44 ---------------- 16.0/base_requirements.txt | 49 +---------------- 16.0/extra_requirements.txt | 44 ---------------- 17.0/Dockerfile | 19 +++---- 17.0/base_requirements.txt | 48 +---------------- 17.0/extra_requirements.txt | 45 ---------------- 18.0/base_requirements.txt | 56 +------------------- 18.0/extra_requirements.txt | 45 ---------------- README.md | 25 --------- bin/check_package | 4 -- install/package_odoo_common.sh | 47 +++++++++++++++++ setup.sh | 4 -- 33 files changed, 64 insertions(+), 1264 deletions(-) delete mode 100644 12.0/Dockerfile delete mode 100644 12.0/MANIFEST.in delete mode 100644 12.0/base_requirements.txt delete mode 100644 12.0/extra_requirements.txt delete mode 100644 12.0/src_requirements.txt delete mode 100644 12.0/templates/odoo.cfg.tmpl delete mode 100644 13.0/Dockerfile delete mode 100644 13.0/MANIFEST.in delete mode 100644 13.0/base_requirements.txt delete mode 100644 13.0/extra_requirements.txt delete mode 100644 13.0/src_requirements.txt delete mode 100644 13.0/templates/odoo.cfg.tmpl delete mode 100644 14.0/Dockerfile delete mode 100644 14.0/MANIFEST.in delete mode 100644 14.0/base_requirements.txt delete mode 100644 14.0/extra_requirements.txt delete mode 100644 14.0/src_requirements.txt delete mode 100644 14.0/templates/odoo.cfg.tmpl delete mode 100644 15.0/extra_requirements.txt delete mode 100644 16.0/extra_requirements.txt delete mode 100644 17.0/extra_requirements.txt delete mode 100644 18.0/extra_requirements.txt create mode 100755 install/package_odoo_common.sh diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 5a66e9ec..5208da7c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,7 +29,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - odoo_serie: ["12.0", "13.0", "14.0", "15.0", "16.0", "17.0", "18.0"] + odoo_serie: ["17.0"] steps: - uses: actions/checkout@v4 diff --git a/12.0/Dockerfile b/12.0/Dockerfile deleted file mode 100644 index 7474962a..00000000 --- a/12.0/Dockerfile +++ /dev/null @@ -1,81 +0,0 @@ -FROM python:3.9-slim-bookworm -ARG UID=999 -# create the working directory and a place to set the logs (if wanted) -RUN mkdir -p /odoo /var/log/odoo - -COPY ./base_requirements.txt /odoo -COPY ./install /install - -# Moved because there was a bug while installing `odoo-autodiscover`. There is -# an accent in the contributor name -ENV LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 - -# build and dev packages -ENV BUILD_PACKAGE \ - build-essential \ - gcc \ - libevent-dev \ - libfreetype6-dev \ - libxml2-dev \ - libxslt1-dev \ - libsasl2-dev \ - libldap2-dev \ - libssl-dev \ - libjpeg-dev \ - libpng-dev \ - zlib1g-dev \ - git - -# Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf -RUN set -x; \ - /install/package_odoo.sh \ - && /install/setup-pip.sh \ - && /install/postgres.sh \ - && /install/kwkhtml_client.sh \ - && /install/kwkhtml_client_force_python3.sh \ - && /install/dev_package.sh \ - && python3 -m pip install --force-reinstall pip "setuptools<58" \ - && pip3 install -r /odoo/base_requirements.txt --ignore-installed \ - && /install/purge_dev_package_and_cache.sh - -# grab dockerize to generate template and -# wait on postgres -RUN /install/dockerize.sh - -COPY ./src_requirements.txt /odoo -COPY ./bin /odoo/odoo-bin -COPY ./templates /templates -COPY ./before-migrate-entrypoint.d /odoo/before-migrate-entrypoint.d -COPY ./start-entrypoint.d /odoo/start-entrypoint.d -COPY ./MANIFEST.in /odoo -RUN adduser --disabled-password -u $UID --gecos '' odoo \ - && touch /odoo/odoo.cfg \ - && mkdir -p /odoo/data/odoo/{addons,filestore,sessions} \ - && chown -R odoo:odoo /odoo && usermod odoo --home /odoo \ - && chown -R odoo:odoo /var/log/odoo - -VOLUME ["/data/odoo", "/var/log/odoo"] -USER odoo -# Expose Odoo services -EXPOSE 8069 8072 - -ENV ODOO_VERSION=12.0 \ - PATH=/odoo/odoo-bin:/odoo/.local/bin:$PATH \ - LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 \ - DB_HOST=db \ - DB_PORT=5432 \ - DB_NAME=odoodb \ - DB_USER=odoo \ - DB_PASSWORD=odoo \ - ODOO_BASE_URL=http://localhost:8069 \ - ODOO_REPORT_URL=http://localhost:8069 \ - # the place where you put the data of your project (csv, ...) - ODOO_DATA_PATH=/odoo/data \ - DEMO=False \ - ADDONS_PATH=/odoo/odoo/addons,/odoo/odoo/src/odoo/addons \ - OPENERP_SERVER=/odoo/odoo.cfg - -ENTRYPOINT ["docker-entrypoint.sh"] -CMD ["odoo"] diff --git a/12.0/MANIFEST.in b/12.0/MANIFEST.in deleted file mode 100644 index 5dff9997..00000000 --- a/12.0/MANIFEST.in +++ /dev/null @@ -1 +0,0 @@ -recursive-include odoo/data * diff --git a/12.0/base_requirements.txt b/12.0/base_requirements.txt deleted file mode 100644 index 3c38aaba..00000000 --- a/12.0/base_requirements.txt +++ /dev/null @@ -1,95 +0,0 @@ -# Odoo dependencies -# python_version = 3.7 -# sys_platform != 'win32' -# this is a copy of Odoo dependencies with some bumped versions -# unused official dependencies are commented to avoid dependabot alerts -Babel==2.6.0 -chardet==3.0.4 -decorator==4.3.0 -docutils==0.14 -ebaysdk==2.1.5 -gevent==22.10.2 -greenlet==2.0.2 -html2text==2018.1.9 -Jinja2==3.1.4 # official 2.10.1 -libsass==0.17.0 -# lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7' -lxml==4.6.3 ; sys_platform != 'win32' and python_version >= '3.7' # official 4.3.2 -# lxml ; sys_platform == 'win32' -Mako==1.3.5 -MarkupSafe==2.1.5 # official 1.1.0 -mock==2.0.0 -num2words==0.5.10 # official 0.5.6 -ofxparse==0.19 -passlib==1.7.2 # official 1.7.1 -Pillow==8.3.2 ; python_version < '3.7' or sys_platform != 'win32' # official 5.4.1 -# Pillow==6.1.0 ; sys_platform == 'win32' and python_version >= '3.7' -polib==1.1.0 -psutil==5.7.0; sys_platform != 'win32' -psycopg2==2.9.9; sys_platform == 'win32' or python_version >= '3.8' -pydot==1.4.1 -python-ldap==3.2.0; sys_platform != 'win32' # official 3.1.0 -pyparsing==2.2.0 -PyPDF2==1.26.0 -pyserial==3.4 -python-dateutil==2.7.3 -pytz==2024.1 -pyusb==1.0.2 -qrcode==6.1 -reportlab==3.6.9 -requests==2.25.1 # official 2.21.0 -zeep==3.2.0 -vatnumber==1.2 -vobject==0.9.6.1 -Werkzeug==0.16.1 ; sys_platform != 'win32' # official 0.14.1 -# Werkzeug==0.16.0 ; sys_platform == 'win32' -XlsxWriter==1.1.2 -xlwt==1.3.* -xlrd==1.1.0 -# pypiwin32 ; sys_platform == 'win32' - -# last version compatible with 2to3 (for vatnumber) -setuptools<58 - -# Not part of official requirements, but used by some addons -# colorama==0.3.9 -gdata==2.0.18 -html5lib==1.0.1 -odfpy==1.4.1 -pyinotify==0.9.6 -python-stdnum==1.13 -simplejson==3.17.0 -urllib3==1.26.7 - -# Migration tools -marabunta==0.12.0 -anthem==0.13.0 - -# test / lint -# those libs and their dependencies are unpinned -# to always test with the last version of it -flake8 -pytest==7.4.4 -pluggy -coverage -pytest-odoo -pytest-cov -watchdog - -# Library dependency -argh==0.26.2 -atomicwrites==1.1.5 -attrs==18.1.0 -beautifulsoup4==4.6.0 -future==0.16.0 -mccabe==0.6.1 -more-itertools==4.2.0 -pathtools==0.1.2 -pbr==4.0.4 -pexpect==4.6.0 -ptyprocess==0.5.2 -py==1.5.3 -pycodestyle==2.5.0 -pyflakes==2.1.1 -unicodecsv==0.14.1 -wrapt==1.10.11 diff --git a/12.0/extra_requirements.txt b/12.0/extra_requirements.txt deleted file mode 100644 index 81a7e3bf..00000000 --- a/12.0/extra_requirements.txt +++ /dev/null @@ -1,46 +0,0 @@ -# Extra python dependencies -algoliasearch==1.17.0 -Adyen==1.2.0 -cachetools==2.1.0 -cerberus==1.2 -boto3==1.7.40 -factur-x==0.3 -invoice2data==0.2.74 -magento==3.0 -mailjet-rest==1.3.0 -openupgradelib==1.3.2 -paramiko==2.4.2 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.1 -phonenumbers==8.9.8 -pyquerystring==1.0.2 -pyOpenSSL==18.0.0 -pyquerystring==1.0.2 -pysimplesoap==1.16.2 -requests-mock==1.5.0 -slugify==0.0.1 -stripe==1.82.2 -unidecode==1.0.22 -vcrpy==1.12.0 - -# Library dependency -asn1crypto==0.24.0 -bcrypt==3.1.4 -botocore==1.10.40 -cffi==1.11.5 -cryptography==2.3.0 -dateparser==0.7.0 -idna==2.7 -jmespath==0.9.3 -multidict==4.3.1 -pdfminer.six==20170720 -pyasn1==0.4.3 -pycparser==2.18 -pycryptodome==3.6.6 -PyNaCl==1.2.1 -pytesseract==0.2.2 -regex==2018.6.9 -s3transfer==0.1.13 -tzlocal==1.5.1 -Unidecode==1.0.22 -yarl==1.2.6 diff --git a/12.0/src_requirements.txt b/12.0/src_requirements.txt deleted file mode 100644 index 69b456a7..00000000 --- a/12.0/src_requirements.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Requirements for the project itself and for Odoo. -# When we install Odoo with -e, odoo.py is available in the PATH and -# 'openerp' in the PYTHONPATH -# -# They are installed only after all the project's files have been copied -# into the image (with ONBUILD) --e . --e src diff --git a/12.0/templates/odoo.cfg.tmpl b/12.0/templates/odoo.cfg.tmpl deleted file mode 100644 index 17989b6d..00000000 --- a/12.0/templates/odoo.cfg.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -[options] -addons_path = {{ .Env.ADDONS_PATH }} -data_dir = /odoo/data/odoo -auto_reload = False -db_host = {{ .Env.DB_HOST }} -db_name = {{ .Env.DB_NAME }} -db_user = {{ .Env.DB_USER }} -db_password = {{ .Env.DB_PASSWORD }} -db_sslmode = {{ default .Env.DB_SSLMODE "prefer" }} -dbfilter = ^{{ default .Env.DB_FILTER .Env.DB_NAME }}$ -list_db = {{ default .Env.LIST_DB "False" }} -admin_passwd = {{ default .Env.ADMIN_PASSWD "" }} -db_maxconn = {{ default .Env.DB_MAXCONN "64" }} -limit_memory_soft = {{ default .Env.LIMIT_MEMORY_SOFT "2147483648" }} -limit_memory_hard = {{ default .Env.LIMIT_MEMORY_HARD "2684354560" }} -limit_request = {{ default .Env.LIMIT_REQUEST "8192" }} -limit_time_cpu = {{ default .Env.LIMIT_TIME_CPU "60" }} -limit_time_real = {{ default .Env.LIMIT_TIME_REAL "120" }} -limit_time_real_cron = {{ default .Env.LIMIT_TIME_REAL_CRON "120" }} -log_handler = {{ default .Env.LOG_HANDLER "':INFO'" }} -log_level = {{ default .Env.LOG_LEVEL "info" }} -max_cron_threads = {{ default .Env.MAX_CRON_THREADS "2" }} -workers = {{ default .Env.WORKERS "4" }} -logfile = {{ default .Env.LOGFILE "None" }} -log_db = {{ default .Env.LOG_DB "False" }} -logrotate = True -syslog = {{ default .Env.SYSLOG "False" }} -running_env = {{ default .Env.RUNNING_ENV "dev" }} -without_demo = {{ default .Env.WITHOUT_DEMO "True" }} -server_wide_modules = {{ default .Env.SERVER_WIDE_MODULES "" }} -; db_sslmode = -; We can activate proxy_mode even if we are not behind a proxy, because -; it is used only if HTTP_X_FORWARDED_HOST is set in environ -proxy_mode = True -; csv_internal_sep = , -; db_template = template1 -; debug_mode = False -; email_from = False -; http_port = 8069 -; http_enable = True -; http_interface = -; longpolling_port = 8072 -; osv_memory_age_limit = 1.0 -; osv_memory_count_limit = False -; smtp_password = False -; smtp_port = 25 -; smtp_server = localhost -; smtp_ssl = False -; smtp_user = False -unaccent = {{ default .Env.UNACCENT "False" }} -{{ default .Env.ADDITIONAL_ODOO_RC "" }} diff --git a/13.0/Dockerfile b/13.0/Dockerfile deleted file mode 100644 index f9363162..00000000 --- a/13.0/Dockerfile +++ /dev/null @@ -1,80 +0,0 @@ -FROM python:3.9-slim-bookworm -ARG UID=999 -# create the working directory and a place to set the logs (if wanted) -RUN mkdir -p /odoo /var/log/odoo - -COPY ./base_requirements.txt /odoo -COPY ./install /install -# Moved because there was a bug while installing `odoo-autodiscover`. There is -# an accent in the contributor name -ENV LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 - -# build and dev packages -ENV BUILD_PACKAGE \ - build-essential \ - gcc \ - libevent-dev \ - libfreetype6-dev \ - libxml2-dev \ - libxslt1-dev \ - libsasl2-dev \ - libldap2-dev \ - libssl-dev \ - libjpeg-dev \ - libpng-dev \ - zlib1g-dev \ - git - -# Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf -RUN set -x; \ - sh -c /install/package_odoo.sh \ - && /install/setup-pip.sh \ - && /install/postgres.sh \ - && /install/kwkhtml_client.sh \ - && /install/kwkhtml_client_force_python3.sh \ - && /install/dev_package.sh \ - && python3 -m pip install --force-reinstall pip "setuptools<58" \ - && pip install -r /odoo/base_requirements.txt --ignore-installed \ - && /install/purge_dev_package_and_cache.sh - -# grab dockerize to generate template and -# wait on postgres -RUN /install/dockerize.sh - -COPY ./src_requirements.txt /odoo -COPY ./bin /odoo/odoo-bin -COPY ./templates /templates -COPY ./before-migrate-entrypoint.d /odoo/before-migrate-entrypoint.d -COPY ./start-entrypoint.d /odoo/start-entrypoint.d -COPY ./MANIFEST.in /odoo -RUN adduser --disabled-password -u $UID --gecos '' odoo \ - && touch /odoo/odoo.cfg \ - && mkdir -p /odoo/data/odoo/{addons,filestore,sessions} \ - && chown -R odoo:odoo /odoo && usermod odoo --home /odoo \ - && chown -R odoo:odoo /var/log/odoo - -VOLUME ["/data/odoo", "/var/log/odoo"] -USER odoo -# Expose Odoo services -EXPOSE 8069 8072 - -ENV ODOO_VERSION=13.0 \ - PATH=/odoo/odoo-bin:/odoo/.local/bin:$PATH \ - LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 \ - DB_HOST=db \ - DB_PORT=5432 \ - DB_NAME=odoodb \ - DB_USER=odoo \ - DB_PASSWORD=odoo \ - ODOO_BASE_URL=http://localhost:8069 \ - ODOO_REPORT_URL=http://localhost:8069 \ - # the place where you put the data of your project (csv, ...) - ODOO_DATA_PATH=/odoo/data \ - DEMO=False \ - ADDONS_PATH=/odoo/odoo/addons,/odoo/odoo/src/odoo/addons \ - OPENERP_SERVER=/odoo/odoo.cfg - -ENTRYPOINT ["docker-entrypoint.sh"] -CMD ["odoo"] diff --git a/13.0/MANIFEST.in b/13.0/MANIFEST.in deleted file mode 100644 index 5dff9997..00000000 --- a/13.0/MANIFEST.in +++ /dev/null @@ -1 +0,0 @@ -recursive-include odoo/data * diff --git a/13.0/base_requirements.txt b/13.0/base_requirements.txt deleted file mode 100644 index 261062e8..00000000 --- a/13.0/base_requirements.txt +++ /dev/null @@ -1,96 +0,0 @@ -# Odoo dependencies -# python_version = 3.7 -# sys_platform != 'win32' -# this is a copy of Odoo dependencies with some bumped versions -# unused official dependencies are commented to avoid dependabot alerts -Babel==2.6.0 -chardet==3.0.4 -decorator==4.3.0 -docutils==0.14 -ebaysdk==2.1.5 -gevent==22.10.2 -greenlet==2.0.2 -html2text==2018.1.9 -Jinja2==3.1.4 # official 2.10.1 -libsass==0.17.0 -# lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7' -lxml==4.6.3 ; sys_platform != 'win32' and python_version >= '3.7' # official 4.3.2 -# lxml ; sys_platform == 'win32' -Mako==1.3.5 -MarkupSafe==2.1.5 # official 1.1.0 -mock==2.0.0 -num2words==0.5.10 # official 0.5.6 -ofxparse==0.19 -passlib==1.7.2 # official 1.7.1 -Pillow==8.3.2 ; python_version < '3.7' or sys_platform != 'win32' # official 5.4.1 -# Pillow==6.1.0 ; sys_platform == 'win32' and python_version >= '3.7' -polib==1.1.0 -psutil==5.7.0; sys_platform != 'win32' -psycopg2==2.9.9; sys_platform == 'win32' or python_version >= '3.8' -pydot==1.4.1 -python-ldap==3.2.0; sys_platform != 'win32' # official 3.1.0 -pyparsing==2.2.0 -PyPDF2==1.26.0 -pyserial==3.4 -python-dateutil==2.7.3 -pytz==2024.1 -pyusb==1.0.2 -qrcode==6.1 -reportlab==3.6.9 -requests==2.25.1 # official 2.21.0 -zeep==3.2.0 -vatnumber==1.2 -vobject==0.9.6.1 -Werkzeug==0.16.1 ; sys_platform != 'win32' # official 0.14.1 -# Werkzeug==0.16.0 ; sys_platform == 'win32' -XlsxWriter==1.1.2 -xlwt==1.3.* -xlrd==1.1.0 -# pypiwin32 ; sys_platform == 'win32' - -# last version compatible with 2to3 (for vatnumber) -setuptools<58 - - -# Not part of official requirements, but used by some addons -# colorama==0.3.9 -gdata==2.0.18 -html5lib==1.0.1 -odfpy==1.4.1 -pyinotify==0.9.6 -python-stdnum==1.13 -simplejson==3.17.0 -urllib3==1.26.7 - -# Migration tools -marabunta==0.12.0 -anthem==0.13.0 - -# test / lint -# those libs and their dependencies are unpinned -# to always test with the last version of it -flake8 -pytest==7.4.4 -pluggy -coverage -pytest-odoo -pytest-cov -watchdog - -# Library dependency -argh==0.26.2 -atomicwrites==1.1.5 -attrs==18.1.0 -beautifulsoup4==4.6.0 -future==0.16.0 -mccabe==0.6.1 -more-itertools==4.2.0 -pathtools==0.1.2 -pbr==4.0.4 -pexpect==4.6.0 -ptyprocess==0.5.2 -py==1.5.3 -pycodestyle==2.5.0 -pyflakes==2.1.1 -unicodecsv==0.14.1 -wrapt==1.10.11 diff --git a/13.0/extra_requirements.txt b/13.0/extra_requirements.txt deleted file mode 100644 index 81a7e3bf..00000000 --- a/13.0/extra_requirements.txt +++ /dev/null @@ -1,46 +0,0 @@ -# Extra python dependencies -algoliasearch==1.17.0 -Adyen==1.2.0 -cachetools==2.1.0 -cerberus==1.2 -boto3==1.7.40 -factur-x==0.3 -invoice2data==0.2.74 -magento==3.0 -mailjet-rest==1.3.0 -openupgradelib==1.3.2 -paramiko==2.4.2 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.1 -phonenumbers==8.9.8 -pyquerystring==1.0.2 -pyOpenSSL==18.0.0 -pyquerystring==1.0.2 -pysimplesoap==1.16.2 -requests-mock==1.5.0 -slugify==0.0.1 -stripe==1.82.2 -unidecode==1.0.22 -vcrpy==1.12.0 - -# Library dependency -asn1crypto==0.24.0 -bcrypt==3.1.4 -botocore==1.10.40 -cffi==1.11.5 -cryptography==2.3.0 -dateparser==0.7.0 -idna==2.7 -jmespath==0.9.3 -multidict==4.3.1 -pdfminer.six==20170720 -pyasn1==0.4.3 -pycparser==2.18 -pycryptodome==3.6.6 -PyNaCl==1.2.1 -pytesseract==0.2.2 -regex==2018.6.9 -s3transfer==0.1.13 -tzlocal==1.5.1 -Unidecode==1.0.22 -yarl==1.2.6 diff --git a/13.0/src_requirements.txt b/13.0/src_requirements.txt deleted file mode 100644 index 69b456a7..00000000 --- a/13.0/src_requirements.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Requirements for the project itself and for Odoo. -# When we install Odoo with -e, odoo.py is available in the PATH and -# 'openerp' in the PYTHONPATH -# -# They are installed only after all the project's files have been copied -# into the image (with ONBUILD) --e . --e src diff --git a/13.0/templates/odoo.cfg.tmpl b/13.0/templates/odoo.cfg.tmpl deleted file mode 100644 index 17989b6d..00000000 --- a/13.0/templates/odoo.cfg.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -[options] -addons_path = {{ .Env.ADDONS_PATH }} -data_dir = /odoo/data/odoo -auto_reload = False -db_host = {{ .Env.DB_HOST }} -db_name = {{ .Env.DB_NAME }} -db_user = {{ .Env.DB_USER }} -db_password = {{ .Env.DB_PASSWORD }} -db_sslmode = {{ default .Env.DB_SSLMODE "prefer" }} -dbfilter = ^{{ default .Env.DB_FILTER .Env.DB_NAME }}$ -list_db = {{ default .Env.LIST_DB "False" }} -admin_passwd = {{ default .Env.ADMIN_PASSWD "" }} -db_maxconn = {{ default .Env.DB_MAXCONN "64" }} -limit_memory_soft = {{ default .Env.LIMIT_MEMORY_SOFT "2147483648" }} -limit_memory_hard = {{ default .Env.LIMIT_MEMORY_HARD "2684354560" }} -limit_request = {{ default .Env.LIMIT_REQUEST "8192" }} -limit_time_cpu = {{ default .Env.LIMIT_TIME_CPU "60" }} -limit_time_real = {{ default .Env.LIMIT_TIME_REAL "120" }} -limit_time_real_cron = {{ default .Env.LIMIT_TIME_REAL_CRON "120" }} -log_handler = {{ default .Env.LOG_HANDLER "':INFO'" }} -log_level = {{ default .Env.LOG_LEVEL "info" }} -max_cron_threads = {{ default .Env.MAX_CRON_THREADS "2" }} -workers = {{ default .Env.WORKERS "4" }} -logfile = {{ default .Env.LOGFILE "None" }} -log_db = {{ default .Env.LOG_DB "False" }} -logrotate = True -syslog = {{ default .Env.SYSLOG "False" }} -running_env = {{ default .Env.RUNNING_ENV "dev" }} -without_demo = {{ default .Env.WITHOUT_DEMO "True" }} -server_wide_modules = {{ default .Env.SERVER_WIDE_MODULES "" }} -; db_sslmode = -; We can activate proxy_mode even if we are not behind a proxy, because -; it is used only if HTTP_X_FORWARDED_HOST is set in environ -proxy_mode = True -; csv_internal_sep = , -; db_template = template1 -; debug_mode = False -; email_from = False -; http_port = 8069 -; http_enable = True -; http_interface = -; longpolling_port = 8072 -; osv_memory_age_limit = 1.0 -; osv_memory_count_limit = False -; smtp_password = False -; smtp_port = 25 -; smtp_server = localhost -; smtp_ssl = False -; smtp_user = False -unaccent = {{ default .Env.UNACCENT "False" }} -{{ default .Env.ADDITIONAL_ODOO_RC "" }} diff --git a/14.0/Dockerfile b/14.0/Dockerfile deleted file mode 100644 index 1707a556..00000000 --- a/14.0/Dockerfile +++ /dev/null @@ -1,81 +0,0 @@ -FROM python:3.9-slim-bookworm -ARG UID=999 -# create the working directory and a place to set the logs (if wanted) -RUN mkdir -p /odoo /var/log/odoo - -COPY ./base_requirements.txt /odoo -COPY ./install /install - -# Moved because there was a bug while installing `odoo-autodiscover`. There is -# an accent in the contributor name -ENV LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 - -# build and dev packages -ENV BUILD_PACKAGE \ - build-essential \ - gcc \ - libevent-dev \ - libfreetype6-dev \ - libxml2-dev \ - libxslt1-dev \ - libsasl2-dev \ - libldap2-dev \ - libssl-dev \ - libjpeg-dev \ - libpng-dev \ - zlib1g-dev \ - git - -# Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf -RUN set -x; \ - sh -c /install/package_odoo.sh \ - && /install/setup-pip.sh \ - && /install/postgres.sh \ - && /install/kwkhtml_client.sh \ - && /install/kwkhtml_client_force_python3.sh \ - && /install/dev_package.sh \ - && python3 -m pip install --force-reinstall pip "setuptools<58" \ - && pip install -r /odoo/base_requirements.txt --ignore-installed \ - && /install/purge_dev_package_and_cache.sh - -# grab dockerize to generate template and -# wait on postgres -RUN /install/dockerize.sh - -COPY ./src_requirements.txt /odoo -COPY ./bin /odoo/odoo-bin -COPY ./templates /templates -COPY ./before-migrate-entrypoint.d /odoo/before-migrate-entrypoint.d -COPY ./start-entrypoint.d /odoo/start-entrypoint.d -COPY ./MANIFEST.in /odoo -RUN adduser --disabled-password -u $UID --gecos '' odoo \ - && touch /odoo/odoo.cfg \ - && mkdir -p /odoo/data/odoo/{addons,filestore,sessions} \ - && chown -R odoo:odoo /odoo && usermod odoo --home /odoo \ - && chown -R odoo:odoo /var/log/odoo - -VOLUME ["/data/odoo", "/var/log/odoo"] -USER odoo -# Expose Odoo services -EXPOSE 8069 8072 - -ENV ODOO_VERSION=14.0 \ - PATH=/odoo/odoo-bin:/odoo/.local/bin:$PATH \ - LANG=C.UTF-8 \ - LC_ALL=C.UTF-8 \ - DB_HOST=db \ - DB_PORT=5432 \ - DB_NAME=odoodb \ - DB_USER=odoo \ - DB_PASSWORD=odoo \ - ODOO_BASE_URL=http://localhost:8069 \ - ODOO_REPORT_URL=http://localhost:8069 \ - # the place where you put the data of your project (csv, ...) - ODOO_DATA_PATH=/odoo/data \ - DEMO=False \ - ADDONS_PATH=/odoo/local-src,/odoo/src/addons \ - OPENERP_SERVER=/odoo/odoo.cfg - -ENTRYPOINT ["docker-entrypoint.sh"] -CMD ["odoo"] diff --git a/14.0/MANIFEST.in b/14.0/MANIFEST.in deleted file mode 100644 index 5dff9997..00000000 --- a/14.0/MANIFEST.in +++ /dev/null @@ -1 +0,0 @@ -recursive-include odoo/data * diff --git a/14.0/base_requirements.txt b/14.0/base_requirements.txt deleted file mode 100644 index 1b9316bf..00000000 --- a/14.0/base_requirements.txt +++ /dev/null @@ -1,94 +0,0 @@ -# Odoo dependencies -# python_version = 3.7 -# sys_platform != 'win32' -# this is a copy of Odoo dependencies with some bumped versions -# unused official dependencies are commented to avoid dependabot alerts -Babel==2.6.0 -chardet==3.0.4 -decorator==4.3.0 -docutils==0.14 -ebaysdk==2.1.5 -freezegun==0.3.15; python_version >= '3.8' -# gevent==1.1.2 ; sys_platform != 'win32' and python_version < '3.7' -gevent==22.10.2 ; python_version >= '3.8' -greenlet==2.0.2 ; python_version > '3.7' -html2text==2018.1.9 -idna==2.6 -Jinja2==2.11.3; python_version < '3.8' # official 2.10.1 -# bullseye version, focal patched 2.10 -Jinja2==2.11.3; python_version >= '3.8' # official 2.11.2 -libsass==0.17.0 -# lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7' -lxml_html_clean -lxml==4.8.0 -# lxml ; sys_platform == 'win32' -Mako==1.0.7 -MarkupSafe==1.1.0 -num2words==0.5.6 -ofxparse==0.19 -passlib==1.7.1 -# Pillow==6.1.0 ; python_version <= '3.7' and sys_platform == 'win32' -Pillow==8.3.2 ; python_version > '3.7' # official 8.1.1 -polib==1.1.0 -psutil==5.6.6 -psycopg2==2.8.6; sys_platform == 'win32' or python_version >= '3.8' # official 2.8.5 -pydot==1.4.1 -python-ldap==3.1.0; sys_platform != 'win32' -PyPDF2==1.26.0 -pyserial==3.4 -python-dateutil==2.7.3 -pytz==2024.1 -pyusb==1.0.2 -qrcode==6.1 -reportlab==3.6.9 -requests==2.25.1 # official 2.21.0 -zeep==3.2.0 -python-stdnum==1.13 # official 1.8 -vobject==0.9.6.1 -Werkzeug==0.16.1 -XlsxWriter==1.1.2 -xlwt==1.3.* -xlrd==1.2.0; python_version >= '3.8' -# pypiwin32 ; sys_platform == 'win32' - -# Not part of official requirements, but used by some addons -# colorama==0.3.9 -gdata==2.0.18 -html5lib==1.0.1 -odfpy==1.4.1 -pyinotify==0.9.6 -simplejson==3.17.0 -urllib3==1.26.7 - -# Migration tools -marabunta==0.12.0 -anthem==0.13.0 - -# test / lint -# those libs and their dependencies are unpinned -# to always test with the last version of it -flake8 -pytest==7.4.4 -pluggy -coverage -pytest-odoo>=0.4.7 -pytest-cov>=2.10.0 -watchdog - -# Library dependency -argh==0.26.2 -atomicwrites==1.1.5 -attrs==18.1.0 -beautifulsoup4==4.6.0 -future==0.16.0 -mccabe==0.6.1 -more-itertools==4.2.0 -pathtools==0.1.2 -pbr==4.0.4 -pexpect==4.6.0 -ptyprocess==0.5.2 -py==1.5.3 -pycodestyle==2.5.0 -pyflakes==2.1.1 -unicodecsv==0.14.1 -wrapt==1.10.11 diff --git a/14.0/extra_requirements.txt b/14.0/extra_requirements.txt deleted file mode 100644 index ae5d56a3..00000000 --- a/14.0/extra_requirements.txt +++ /dev/null @@ -1,45 +0,0 @@ -# Extra python dependencies -algoliasearch==1.17.0 -Adyen==1.2.0 -cachetools==2.1.0 -cerberus==1.2 -boto3==1.7.40 -factur-x==0.3 -invoice2data==0.2.74 -magento==3.0 -mailjet-rest==1.3.0 -openupgradelib==1.3.2 -paramiko==2.4.2 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.1 -phonenumbers==8.9.8 -pyquerystring==1.0.2 -pyOpenSSL==18.0.0 -pyquerystring==1.0.2 -pysimplesoap==1.16.2 -requests-mock==1.5.0 -slugify==0.0.1 -stripe==1.82.2 -unidecode==1.0.22 -vcrpy==1.12.0 - -# Library dependency -asn1crypto==0.24.0 -bcrypt==3.1.4 -botocore==1.10.40 -cffi==1.11.5 -dateparser==0.7.0 -idna==2.7 -jmespath==0.9.3 -multidict==4.3.1 -pdfminer.six==20170720 -pyasn1==0.4.3 -pycparser==2.18 -pycryptodome==3.6.6 -PyNaCl==1.2.1 -pytesseract==0.2.2 -regex==2018.6.9 -s3transfer==0.1.13 -tzlocal==1.5.1 -Unidecode==1.0.22 -yarl==1.2.6 diff --git a/14.0/src_requirements.txt b/14.0/src_requirements.txt deleted file mode 100644 index 69b456a7..00000000 --- a/14.0/src_requirements.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Requirements for the project itself and for Odoo. -# When we install Odoo with -e, odoo.py is available in the PATH and -# 'openerp' in the PYTHONPATH -# -# They are installed only after all the project's files have been copied -# into the image (with ONBUILD) --e . --e src diff --git a/14.0/templates/odoo.cfg.tmpl b/14.0/templates/odoo.cfg.tmpl deleted file mode 100644 index 17989b6d..00000000 --- a/14.0/templates/odoo.cfg.tmpl +++ /dev/null @@ -1,51 +0,0 @@ -[options] -addons_path = {{ .Env.ADDONS_PATH }} -data_dir = /odoo/data/odoo -auto_reload = False -db_host = {{ .Env.DB_HOST }} -db_name = {{ .Env.DB_NAME }} -db_user = {{ .Env.DB_USER }} -db_password = {{ .Env.DB_PASSWORD }} -db_sslmode = {{ default .Env.DB_SSLMODE "prefer" }} -dbfilter = ^{{ default .Env.DB_FILTER .Env.DB_NAME }}$ -list_db = {{ default .Env.LIST_DB "False" }} -admin_passwd = {{ default .Env.ADMIN_PASSWD "" }} -db_maxconn = {{ default .Env.DB_MAXCONN "64" }} -limit_memory_soft = {{ default .Env.LIMIT_MEMORY_SOFT "2147483648" }} -limit_memory_hard = {{ default .Env.LIMIT_MEMORY_HARD "2684354560" }} -limit_request = {{ default .Env.LIMIT_REQUEST "8192" }} -limit_time_cpu = {{ default .Env.LIMIT_TIME_CPU "60" }} -limit_time_real = {{ default .Env.LIMIT_TIME_REAL "120" }} -limit_time_real_cron = {{ default .Env.LIMIT_TIME_REAL_CRON "120" }} -log_handler = {{ default .Env.LOG_HANDLER "':INFO'" }} -log_level = {{ default .Env.LOG_LEVEL "info" }} -max_cron_threads = {{ default .Env.MAX_CRON_THREADS "2" }} -workers = {{ default .Env.WORKERS "4" }} -logfile = {{ default .Env.LOGFILE "None" }} -log_db = {{ default .Env.LOG_DB "False" }} -logrotate = True -syslog = {{ default .Env.SYSLOG "False" }} -running_env = {{ default .Env.RUNNING_ENV "dev" }} -without_demo = {{ default .Env.WITHOUT_DEMO "True" }} -server_wide_modules = {{ default .Env.SERVER_WIDE_MODULES "" }} -; db_sslmode = -; We can activate proxy_mode even if we are not behind a proxy, because -; it is used only if HTTP_X_FORWARDED_HOST is set in environ -proxy_mode = True -; csv_internal_sep = , -; db_template = template1 -; debug_mode = False -; email_from = False -; http_port = 8069 -; http_enable = True -; http_interface = -; longpolling_port = 8072 -; osv_memory_age_limit = 1.0 -; osv_memory_count_limit = False -; smtp_password = False -; smtp_port = 25 -; smtp_server = localhost -; smtp_ssl = False -; smtp_user = False -unaccent = {{ default .Env.UNACCENT "False" }} -{{ default .Env.ADDITIONAL_ODOO_RC "" }} diff --git a/15.0/Dockerfile b/15.0/Dockerfile index ab485f0d..bd3a5469 100644 --- a/15.0/Dockerfile +++ b/15.0/Dockerfile @@ -3,8 +3,8 @@ ARG UID=999 # create the working directory and a place to set the logs (if wanted) RUN mkdir -p /odoo /var/log/odoo -COPY ./base_requirements.txt /odoo COPY ./install /install +COPY ./base_requirements.txt /odoo # Moved because there was a bug while installing `odoo-autodiscover`. There is # an accent in the contributor name @@ -27,10 +27,12 @@ ENV BUILD_PACKAGE \ zlib1g-dev \ git + # Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf # wkhtml-buster is kept as in official image, no deb available for bullseye RUN set -x; \ - sh -c /install/package_odoo.sh \ + sh -c /install/package_odoo_common.sh \ + && /install/package_odoo.sh \ && /install/setup-pip.sh \ && /install/postgres.sh \ && /install/kwkhtml_client.sh \ diff --git a/15.0/base_requirements.txt b/15.0/base_requirements.txt index e5a4a9eb..bec09db6 100644 --- a/15.0/base_requirements.txt +++ b/15.0/base_requirements.txt @@ -1,46 +1,3 @@ -Babel==2.9.1 # min version = 2.6.0 (Focal with security backports) -chardet==3.0.4 -cryptography==42.0.8 ; python_version >= '3.12' # (Noble) min 41.0.7, pinning 42.0.8 for security fixes -decorator==4.4.2 -docutils==0.16 -ebaysdk==2.1.5 -freezegun==0.3.15; python_version >= '3.8' -gevent==24.2.1 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -greenlet==3.0.3 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -idna==2.8 -Jinja2==3.1.2 ; python_version >= '3.12' # (Noble) compatibility with markupsafe -libsass==0.22.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -lxml==5.2.1; python_version >= '3.12' # (Noble - removed html clean) -lxml-html-clean; python_version >= '3.12' # (Noble - removed from lxml, unpinned for futur security patches) -MarkupSafe==2.1.5 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -num2words==0.5.6 -ofxparse==0.21; python_version > '3.9' # (Jammy) -Pillow==10.2.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -polib==1.1.0 -psutil==5.9.8 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -psycopg2==2.9.9 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -pydot==1.4.1 -pyopenssl==24.1.0 ; python_version >= '3.12' # (Noble) min 23.2.0, pinned for compatibility with cryptography==42.0.8 and security patches -PyPDF2==2.12.1 ; python_version >= '3.12' # (Noble) Compatibility with cryptography -pyserial==3.4 -python-dateutil==2.7.3 -python-ldap==3.4.4 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) Mostly to have a wheel package -python-stdnum==1.13 -pytz # no version pinning to avoid OS perturbations -pyusb==1.2.1 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -qrcode==6.1 -reportlab==4.1.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -requests==2.31.0 ; python_version >= '3.12' # (Noble) Compatibility with i -rl-renderPM==4.0.3 ; sys_platform == 'win32' and python_version >= '3.12' # Needed by reportlab 4.1.0 but included in deb package -urllib3==2.0.7 ; python_version >= '3.12' # (Noble) Compatibility with cryptography -vobject==0.9.6.1 -Werkzeug==2.0.2 ; python_version > '3.9' # (Jammy) -xlrd==1.2.0; python_version >= '3.8' -XlsxWriter==1.1.2 -xlwt==1.3.0 -zeep==3.4.0 - - # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 @@ -48,6 +5,8 @@ html5lib==1.1 odfpy==1.4.1 pyinotify==0.9.6 simplejson==3.19.3 +lxml-html-clean==0.4.1 + # Migration tools marabunta==0.12.0 @@ -56,7 +15,6 @@ marabunta==0.12.0 # test / lint # those libs and their dependencies are unpinned # to always test with the last version of it - flake8 pytest==8.3.2 pluggy diff --git a/15.0/extra_requirements.txt b/15.0/extra_requirements.txt deleted file mode 100644 index e753fc32..00000000 --- a/15.0/extra_requirements.txt +++ /dev/null @@ -1,44 +0,0 @@ -# Extra python dependencies -algoliasearch==4.1.1 -Adyen==12.3.0 -cachetools==5.5.0 -cerberus==1.3.5 -boto3==1.35.6 -factur-x==3.1 -invoice2data==0.4.5 -mailjet-rest==1.3.4 -openupgradelib==3.6.1 -paramiko==3.4.1 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.3 -phonenumbers==8.13.44 -pyquerystring==1.1 -pyOpenSSL==24.2.1 -pyquerystring==1.1 -pysimplesoap==1.16.2 -requests-mock==1.12.1 -slugify==0.0.1 -stripe==10.8.0 -unidecode==1.3.8 -vcrpy==6.0.1 - -# Library dependency -asn1crypto==1.5.1 -bcrypt==4.2.0 -botocore==1.35.6 -cffi==1.17.0 -dateparser==1.2.0 -idna==3.8 -jmespath==1.0.1 -multidict==6.0.5 -pdfminer.six==20240706 -pyasn1==0.6.0 -pycparser==2.22 -pycryptodome==3.20.0 -PyNaCl==1.5.0 -pytesseract==0.3.13 -regex==2024.7.24 -s3transfer==0.10.2 -tzlocal==5.2 -Unidecode==1.3.8 -yarl==1.9.4 diff --git a/16.0/base_requirements.txt b/16.0/base_requirements.txt index d584bceb..bec09db6 100644 --- a/16.0/base_requirements.txt +++ b/16.0/base_requirements.txt @@ -1,50 +1,3 @@ -# The officially supported versions of the following packages are their -# python3-* equivalent distributed in Ubuntu 22.04 and Debian 11 -Babel==2.9.1 # min version = 2.6.0 (Focal with security backports) -chardet==4.0.0 -cryptography==42.0.8 ; python_version >= '3.12' # (Noble) min 41.0.7, pinning 42.0.8 for security fixes -decorator==4.4.2 -docutils==0.16 -ebaysdk==2.1.5 -freezegun==0.3.15; python_version >= '3.8' -gevent==24.2.1 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -greenlet==3.0.3 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -idna==2.10 -Jinja2==3.1.2 ; python_version > '3.10' -libsass==0.22.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -lxml==5.2.1; python_version >= '3.12' # (Noble - removed html clean) -lxml-html-clean; python_version >= '3.12' # (Noble - removed from lxml, unpinned for futur security patches) -MarkupSafe==2.1.5 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -num2words==0.5.9 -ofxparse==0.21; python_version > '3.9' # (Jammy) -passlib==1.7.4 # min version = 1.7.2 (Focal with security backports) -Pillow==10.2.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -polib==1.1.0 -psutil==5.9.8 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -psycopg2==2.9.9 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -pydot==1.4.2 -pyopenssl==24.1.0 ; python_version >= '3.12' # (Noble) min 23.2.0, pinned for compatibility with cryptography==42.0.8 and security patches -PyPDF2==2.12.1 ; python_version > '3.10' -pyserial==3.5 -python-dateutil==2.8.1 -python-ldap==3.4.4 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) Mostly to have a wheel package -python-stdnum==1.16 -pytz # no version pinning to avoid OS perturbations -pyusb==1.2.1 ; python_version > '3.10' -qrcode==6.1 -reportlab==4.1.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -requests==2.31.0 ; python_version >= '3.12' # (Noble) Compatibility with i -rl-renderPM==4.0.3 ; sys_platform == 'win32' and python_version >= '3.12' # Needed by reportlab 4.1.0 but included in deb package -urllib3==2.0.7 ; python_version >= '3.12' # (Noble) Compatibility with cryptography -vobject==0.9.6.1 -Werkzeug==2.0.2 ; python_version > '3.9' # (Jammy) -xlrd==1.2.0; python_version >= '3.8' -XlsxWriter==1.1.2 -xlwt==1.3.0 -zeep==4.0.0 - -setuptools==73.0.1 - # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 @@ -52,6 +5,8 @@ html5lib==1.1 odfpy==1.4.1 pyinotify==0.9.6 simplejson==3.19.3 +lxml-html-clean==0.4.1 + # Migration tools marabunta==0.12.0 diff --git a/16.0/extra_requirements.txt b/16.0/extra_requirements.txt deleted file mode 100644 index e753fc32..00000000 --- a/16.0/extra_requirements.txt +++ /dev/null @@ -1,44 +0,0 @@ -# Extra python dependencies -algoliasearch==4.1.1 -Adyen==12.3.0 -cachetools==5.5.0 -cerberus==1.3.5 -boto3==1.35.6 -factur-x==3.1 -invoice2data==0.4.5 -mailjet-rest==1.3.4 -openupgradelib==3.6.1 -paramiko==3.4.1 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.3 -phonenumbers==8.13.44 -pyquerystring==1.1 -pyOpenSSL==24.2.1 -pyquerystring==1.1 -pysimplesoap==1.16.2 -requests-mock==1.12.1 -slugify==0.0.1 -stripe==10.8.0 -unidecode==1.3.8 -vcrpy==6.0.1 - -# Library dependency -asn1crypto==1.5.1 -bcrypt==4.2.0 -botocore==1.35.6 -cffi==1.17.0 -dateparser==1.2.0 -idna==3.8 -jmespath==1.0.1 -multidict==6.0.5 -pdfminer.six==20240706 -pyasn1==0.6.0 -pycparser==2.22 -pycryptodome==3.20.0 -PyNaCl==1.5.0 -pytesseract==0.3.13 -regex==2024.7.24 -s3transfer==0.10.2 -tzlocal==5.2 -Unidecode==1.3.8 -yarl==1.9.4 diff --git a/17.0/Dockerfile b/17.0/Dockerfile index b8474a09..95238f2e 100644 --- a/17.0/Dockerfile +++ b/17.0/Dockerfile @@ -11,26 +11,19 @@ COPY ./install /install ENV LANG=C.UTF-8 \ LC_ALL=C.UTF-8 +# build and dev packages # build and dev packages ENV BUILD_PACKAGE \ - build-essential \ - gcc \ - libevent-dev \ - libfreetype6-dev \ - libxml2-dev \ - libxslt1-dev \ - libsasl2-dev \ - libldap2-dev \ - libssl-dev \ - libjpeg-dev \ - libpng-dev \ - zlib1g-dev \ git +# run in a virtualenv +RUN python3 -m venv .venv +RUN . .venv/bin/activate # Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf # wkhtml-buster is kept as in official image, no deb available for bullseye RUN set -x; \ - sh -c /install/package_odoo.sh \ + sh -c /install/package_odoo_common.sh \ + && /install/package_odoo.sh \ && /install/setup-pip.sh \ && /install/postgres.sh \ && /install/kwkhtml_client.sh \ diff --git a/17.0/base_requirements.txt b/17.0/base_requirements.txt index 1855f5ad..d8620d79 100644 --- a/17.0/base_requirements.txt +++ b/17.0/base_requirements.txt @@ -1,49 +1,3 @@ -Babel==2.10.3 ; python_version >= '3.11' -chardet==5.2.0 ; python_version >= '3.11' -cryptography==42.0.8 ; python_version >= '3.12' # (Noble) min 41.0.7, pinning 42.0.8 for security fixes -decorator==5.1.1 ; python_version >= '3.11' -docutils==0.20.1 ; python_version >= '3.11' -ebaysdk==2.1.5 -freezegun==1.2.1 ; python_version >= '3.11' -geoip2==2.9.0 -gevent==24.2.1 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -greenlet==3.0.3 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -idna==3.6 ; python_version >= '3.12' -Jinja2==3.1.2 ; python_version > '3.10' -libsass==0.22.0 ; python_version >= '3.11' # (Noble) Mostly to have a wheel package -lxml==5.2.1; python_version >= '3.12' # (Noble - removed html clean) -lxml-html-clean; python_version >= '3.12' # (Noble - removed from lxml, unpinned for futur security patches) -MarkupSafe==2.1.5 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -num2words==0.5.13 ; python_version >= '3.12' -ofxparse==0.21 -passlib==1.7.4 # min version = 1.7.2 (Focal with security backports) -Pillow==10.2.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -polib==1.1.1 -psutil==5.9.8 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -psycopg2==2.9.9 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -pydot==1.4.2 -pyopenssl==24.1.0 ; python_version >= '3.12' # (Noble) min 23.2.0, pinned for compatibility with cryptography==42.0.8 and security patches -PyPDF2==2.12.1 ; python_version > '3.10' -pyserial==3.5 -python-dateutil==2.8.2 ; python_version >= '3.11' -python-ldap==3.4.4 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) Mostly to have a wheel package -python-stdnum==1.19 ; python_version >= '3.11' -pytz # no version pinning to avoid OS perturbations -pyusb==1.2.1 -qrcode==7.4.2 ; python_version >= '3.11' -reportlab==4.1.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -requests==2.31.0 ; python_version >= '3.11' # (Noble) -rjsmin==1.2.0 ; python_version >= '3.11' -rl-renderPM==4.0.3 ; sys_platform == 'win32' and python_version >= '3.12' # Needed by reportlab 4.1.0 but included in deb package -urllib3==2.0.7 ; python_version >= '3.12' # (Noble) Compatibility with cryptography -vobject==0.9.6.1 -Werkzeug==3.0.1 ; python_version >= '3.12' # (Noble) Avoid deprecation warnings -xlrd==2.0.1 ; python_version >= '3.12' -XlsxWriter==3.1.9 ; python_version >= '3.12' -xlwt==1.3.0 -zeep==4.2.1 ; python_version >= '3.11' -setuptools==73.0.1 - # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 @@ -51,7 +5,7 @@ html5lib==1.1 odfpy==1.4.1 pyinotify==0.9.6 simplejson==3.19.3 - +lxml-html-clean==0.4.1 # Migration tools marabunta==0.12.0 diff --git a/17.0/extra_requirements.txt b/17.0/extra_requirements.txt deleted file mode 100644 index 619600eb..00000000 --- a/17.0/extra_requirements.txt +++ /dev/null @@ -1,45 +0,0 @@ -# Extra python dependencies -algoliasearch==4.1.1 -Adyen==12.3.0 -cachetools==5.5.0 -cerberus==1.3.5 -boto3==1.35.6 -factur-x==3.1 -invoice2data==0.4.5 -mailjet-rest==1.3.4 -openupgradelib==3.6.1 -paramiko==3.4.1 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.3 -phonenumbers==8.13.44 -pyquerystring==1.1 -pyOpenSSL==24.2.1 -pyquerystring==1.1 -pysimplesoap==1.16.2 -requests-mock==1.12.1 -slugify==0.0.1 -stripe==10.8.0 -unidecode==1.3.8 -vcrpy==6.0.1 - -# Library dependency -asn1crypto==1.5.1 -bcrypt==4.2.0 -botocore==1.35.6 -cffi==1.17.0 -cryptography==43.0.0 -dateparser==1.2.0 -idna==3.8 -jmespath==1.0.1 -multidict==6.0.5 -pdfminer.six==20240706 -pyasn1==0.6.0 -pycparser==2.22 -pycryptodome==3.20.0 -PyNaCl==1.5.0 -pytesseract==0.3.13 -regex==2024.7.24 -s3transfer==0.10.2 -tzlocal==5.2 -Unidecode==1.3.8 -yarl==1.9.4 diff --git a/18.0/base_requirements.txt b/18.0/base_requirements.txt index 91d44e16..1f76bbd1 100644 --- a/18.0/base_requirements.txt +++ b/18.0/base_requirements.txt @@ -1,58 +1,3 @@ -# The officially supported versions of the following packages are their -# python3-* equivalent distributed in Ubuntu 24.04 and Debian 12 -asn1crypto==1.5.1 ; python_version >= '3.11' -Babel==2.10.3 ; python_version >= '3.11' -cbor2==5.6.2 ; python_version >= '3.12' -chardet==5.2.0 ; python_version >= '3.11' -cryptography==42.0.8 ; python_version >= '3.12' # (Noble) min 41.0.7, pinning 42.0.8 for security fixes -decorator==5.1.1 ; python_version >= '3.11' -docutils==0.20.1 ; python_version >= '3.11' -freezegun==1.2.1 ; python_version >= '3.11' -geoip2==2.9.0 -gevent==24.2.1 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -greenlet==3.0.3 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) -idna==3.7 ; python_version >= '3.12' -Jinja2==3.1.3 ; python_version > '3.10' -libsass==0.22.0 ; python_version >= '3.11' # (Noble) Mostly to have a wheel package -lxml==5.2.1; python_version >= '3.12' # (Noble - removed html clean) -lxml-html-clean; python_version >= '3.12' # (Noble - removed from lxml, unpinned for futur security patches) -MarkupSafe==2.1.5 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -num2words==0.5.13 ; python_version >= '3.12' -ofxparse==0.21 -openpyxl==3.1.2 ; python_version >= '3.12' -passlib==1.7.4 # min version = 1.7.2 (Focal with security backports) -Pillow==10.3.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -polib==1.1.1 -psutil==5.9.4 ; python_version > '3.10' and python_version < '3.12' -psutil==5.9.8 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -psycopg2==2.9.9 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -pyopenssl==24.1.0 ; python_version >= '3.12' # (Noble) min 23.2.0, pinned for compatibility with cryptography==42.0.8 and security patches -PyPDF2==2.12.1 ; python_version > '3.10' -pyserial==3.5 -python-dateutil==2.8.2 ; python_version >= '3.11' -python-ldap==3.4.4 ; sys_platform != 'win32' and python_version >= '3.12' # (Noble) Mostly to have a wheel package -python-stdnum==1.19 ; python_version >= '3.11' -pytz # no version pinning to avoid OS perturbations -pyusb==1.2.1 -qrcode==7.4.2 ; python_version >= '3.11' -reportlab==4.1.0 ; python_version >= '3.12' # (Noble) Mostly to have a wheel package -requests==2.32.0 ; python_version >= '3.11' # (Noble) -rjsmin==1.2.0 ; python_version >= '3.11' -urllib3==2.0.7 ; python_version >= '3.12' # (Noble) Compatibility with cryptography -vobject==0.9.6.1 -Werkzeug==3.0.3 ; python_version >= '3.12' # (Noble) Avoid deprecation warnings -xlrd==2.0.1 ; python_version >= '3.12' -XlsxWriter==3.1.9 ; python_version >= '3.12' -xlwt==1.3.0 -zeep==4.2.1 ; python_version >= '3.11' - - - - - - -setuptools==73.0.1 - # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 @@ -60,6 +5,7 @@ html5lib==1.1 odfpy==1.4.1 pyinotify==0.9.6 simplejson==3.19.3 +lxml-html-clean==0.4.1 # Migration tools diff --git a/18.0/extra_requirements.txt b/18.0/extra_requirements.txt deleted file mode 100644 index 619600eb..00000000 --- a/18.0/extra_requirements.txt +++ /dev/null @@ -1,45 +0,0 @@ -# Extra python dependencies -algoliasearch==4.1.1 -Adyen==12.3.0 -cachetools==5.5.0 -cerberus==1.3.5 -boto3==1.35.6 -factur-x==3.1 -invoice2data==0.4.5 -mailjet-rest==1.3.4 -openupgradelib==3.6.1 -paramiko==3.4.1 -parse-accept-language==0.1.2 -paypalrestsdk==1.13.3 -phonenumbers==8.13.44 -pyquerystring==1.1 -pyOpenSSL==24.2.1 -pyquerystring==1.1 -pysimplesoap==1.16.2 -requests-mock==1.12.1 -slugify==0.0.1 -stripe==10.8.0 -unidecode==1.3.8 -vcrpy==6.0.1 - -# Library dependency -asn1crypto==1.5.1 -bcrypt==4.2.0 -botocore==1.35.6 -cffi==1.17.0 -cryptography==43.0.0 -dateparser==1.2.0 -idna==3.8 -jmespath==1.0.1 -multidict==6.0.5 -pdfminer.six==20240706 -pyasn1==0.6.0 -pycparser==2.22 -pycryptodome==3.20.0 -PyNaCl==1.5.0 -pytesseract==0.3.13 -regex==2024.7.24 -s3transfer==0.10.2 -tzlocal==5.2 -Unidecode==1.3.8 -yarl==1.9.4 diff --git a/README.md b/README.md index af05f6a9..81da61fc 100644 --- a/README.md +++ b/README.md @@ -45,26 +45,10 @@ https://github.com/camptocamp/docker-odoo-project/pkgs/container/odoo-project There are 4 flavors of the image: - normal: `odoo-project:${odoo_version}-${tag_version}` -- normal-onbuild: `odoo-project:${odoo_version}-${tag_version}-onbuild` -- batteries-included: `odoo-project:${odoo_version}-${tag_version}-batteries` -- batteries-included-onbuild: `odoo-project:${odoo_version}-${tag_version}-batteries-onbuild` Note: in production, we strongly recommend to never use the "latest" tag. Instead use a specific version in order to be able to rebuild identical images. -### Normal or Batteries-included? - -The batteries-included image is exactly the same image, with a list of -additional pre-installed python packages. The packages have been chosen because -of their prevalent usage in OCA addons. - -The list of package (with their version) is defined in the extra_requirements.txt file. - -* [9.0/extra_requirements.txt](9.0/extra_requirements.txt) -* [10.0/extra_requirements.txt](10.0/extra_requirements.txt) -* [11.0/extra_requirements.txt](11.0/extra_requirements.txt) - -you can also see the Dockerfile that generate this image here: [common/Dockerfile-batteries](common/Dockerfile-batteries) ### With or without onbuild? @@ -99,15 +83,6 @@ $ make VERSION=11.0 $ make VERSION=10.0 ``` -Batteries-included flavors: -``` -# generate image camptocamp/odoo-project:11.0-batteries-latest and camptocamp/odoo-project:11.0-latest-batteries-onbuild -$ make VERSION=11.0 BATTERIES=True -# generate image camptocamp/odoo-project:10.0-batteries-latest and camptocamp/odoo-project:10.0-latest-batteries-onbuild -$ make VERSION=10.0 BATTERIES=True -``` - - ## Configuration The host for the database is in `$DB_HOST` (`db` by default). diff --git a/bin/check_package b/bin/check_package index 46f304d3..074bd20c 100755 --- a/bin/check_package +++ b/bin/check_package @@ -4,10 +4,6 @@ set -e cat /odoo/base_requirements.txt > requirements.txt -if [ "$BATTERIES" = "True" ] - then cat /odoo/extra_requirements.txt >> requirements.txt -fi - sed -i '/^\s*$/d' requirements.txt pip freeze -r requirements.txt | grep -v odoo > installed_package.txt diff --git a/install/package_odoo_common.sh b/install/package_odoo_common.sh new file mode 100755 index 00000000..59f89456 --- /dev/null +++ b/install/package_odoo_common.sh @@ -0,0 +1,47 @@ +#!/bin/bash +set -eo pipefail + +apt-get update -o Acquire::AllowInsecureRepositories=true +apt-get install -y --no-install-recommends \ + adduser \ + fonts-dejavu-core \ + fonts-freefont-ttf \ + fonts-freefont-otf \ + fonts-noto-core \ + fonts-inconsolata \ + fonts-font-awesome \ + fonts-roboto-unhinted \ + gsfonts \ + libjs-underscore \ + lsb-base \ + postgresql-client \ + python3-babel \ + python3-chardet \ + python3-dateutil \ + python3-decorator \ + python3-docutils \ + python3-freezegun \ + python3-pil \ + python3-jinja2 \ + python3-libsass \ + python3-lxml \ + python3-num2words \ + python3-ofxparse \ + python3-passlib \ + python3-polib \ + python3-psutil \ + python3-psycopg2 \ + python3-pydot \ + python3-openssl \ + python3-pypdf2 \ + python3-qrcode \ + python3-renderpm \ + python3-reportlab \ + python3-requests \ + python3-stdnum \ + python3-tz \ + python3-vobject \ + python3-werkzeug \ + python3-xlsxwriter \ + python3-xlrd \ + python3-zeep diff --git a/setup.sh b/setup.sh index 99cf4aea..0686e974 100644 --- a/setup.sh +++ b/setup.sh @@ -24,10 +24,6 @@ echo "Creating $SRC" cp -r ${VERSION}/. $SRC/ cp -r bin/ $SRC cp -rT common/ $SRC -cp common/Dockerfile-onbuild $SRC/Dockerfile-batteries-onbuild -sed -i "1i FROM ${BUILD_TAG}" $SRC/Dockerfile-onbuild -sed -i "1i FROM ${BUILD_TAG}" $SRC/Dockerfile-batteries -sed -i "1i FROM ${BUILD_TAG}-batteries" $SRC/Dockerfile-batteries-onbuild cp -r install/ $SRC cp -r start-entrypoint.d/ $SRC cp -r before-migrate-entrypoint.d/ $SRC From 486f0c6781e77452ecf1c8130f983f4d20818182 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Tue, 26 Nov 2024 12:56:49 +0100 Subject: [PATCH 2/7] fixup! fix: new flovar --- example/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/example/Dockerfile b/example/Dockerfile index 7c6bf1a0..3811e100 100644 --- a/example/Dockerfile +++ b/example/Dockerfile @@ -23,11 +23,11 @@ RUN set -x; \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -COPY ./requirements.txt /odoo/ +#COPY ./requirements.txt /odoo/ USER odoo WORKDIR /odoo RUN pip install --user -e . -RUN pip install --user -r requirements.txt +#RUN pip install --user -r requirements.txt # Project's specifics packages From f53e4d3f82d735abbd0c77a5811e11a0d2afe465 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Thu, 28 Nov 2024 11:43:48 +0100 Subject: [PATCH 3/7] fixup! fixup! fix: new flovar --- 15.0/base_requirements.txt | 31 -------------------------- 17.0/Dockerfile | 1 + 17.0/base_requirements.txt | 32 +-------------------------- common/.coveragerc | 8 ------- common/Dockerfile-batteries | 13 ----------- common/Dockerfile-onbuild | 16 -------------- install/package_odoo_common_custom.sh | 31 ++++++++++++++++++++++++++ 7 files changed, 33 insertions(+), 99 deletions(-) delete mode 100644 common/.coveragerc delete mode 100644 common/Dockerfile-batteries delete mode 100644 common/Dockerfile-onbuild create mode 100755 install/package_odoo_common_custom.sh diff --git a/15.0/base_requirements.txt b/15.0/base_requirements.txt index bec09db6..9c0aeaa7 100644 --- a/15.0/base_requirements.txt +++ b/15.0/base_requirements.txt @@ -1,10 +1,6 @@ # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 -html5lib==1.1 -odfpy==1.4.1 -pyinotify==0.9.6 -simplejson==3.19.3 lxml-html-clean==0.4.1 @@ -12,30 +8,3 @@ lxml-html-clean==0.4.1 marabunta==0.12.0 -e git+https://github.com/camptocamp/anthem@master#egg=anthem -# test / lint -# those libs and their dependencies are unpinned -# to always test with the last version of it -flake8 -pytest==8.3.2 -pluggy -coverage -pytest-odoo>=0.4.7 -pytest-cov>=2.10.0 -watchdog - -# Library dependency -argh==0.31.3 -atomicwrites==1.4.1 -attrs==24.2.0 -beautifulsoup4==4.12.3 -future==1.0.0 -mccabe==0.7.0 -more-itertools==10.5.0 -pbr==6.1.0 -pexpect==4.9.0 -ptyprocess==0.7.0 -py==1.11.0 -pycodestyle==2.12.1 -pyflakes==3.2.0 -unicodecsv==0.14.1 -wrapt==1.16.0 diff --git a/17.0/Dockerfile b/17.0/Dockerfile index 95238f2e..048fe018 100644 --- a/17.0/Dockerfile +++ b/17.0/Dockerfile @@ -23,6 +23,7 @@ RUN . .venv/bin/activate # wkhtml-buster is kept as in official image, no deb available for bullseye RUN set -x; \ sh -c /install/package_odoo_common.sh \ + && /install/package_odoo_common_custom.sh \ && /install/package_odoo.sh \ && /install/setup-pip.sh \ && /install/postgres.sh \ diff --git a/17.0/base_requirements.txt b/17.0/base_requirements.txt index d8620d79..9c0aeaa7 100644 --- a/17.0/base_requirements.txt +++ b/17.0/base_requirements.txt @@ -1,40 +1,10 @@ # Not part of official requirements, but used by some addons # colorama==0.3.9 gdata==2.0.18 -html5lib==1.1 -odfpy==1.4.1 -pyinotify==0.9.6 -simplejson==3.19.3 lxml-html-clean==0.4.1 + # Migration tools marabunta==0.12.0 -e git+https://github.com/camptocamp/anthem@master#egg=anthem -# test / lint -# those libs and their dependencies are unpinned -# to always test with the last version of it -flake8 -pytest==8.3.2 -pluggy -coverage -pytest-odoo>=0.4.7 -pytest-cov>=2.10.0 -watchdog - -# Library dependency -argh==0.31.3 -atomicwrites==1.4.1 -attrs==24.2.0 -beautifulsoup4==4.12.3 -future==1.0.0 -mccabe==0.7.0 -more-itertools==10.4.0 -pbr==6.0.0 -pexpect==4.9.0 -ptyprocess==0.7.0 -py==1.11.0 -pycodestyle==2.12.1 -pyflakes==3.2.0 -unicodecsv==0.14.1 -wrapt==1.16.0 diff --git a/common/.coveragerc b/common/.coveragerc deleted file mode 100644 index 4f7fff45..00000000 --- a/common/.coveragerc +++ /dev/null @@ -1,8 +0,0 @@ -[run] - -omit = - # omit all manifest files - */__manifest__.py - */__openerp__.py - # omit all test files - */tests/* diff --git a/common/Dockerfile-batteries b/common/Dockerfile-batteries deleted file mode 100644 index 600f7dbb..00000000 --- a/common/Dockerfile-batteries +++ /dev/null @@ -1,13 +0,0 @@ -MAINTAINER Camptocamp - -WORKDIR "/odoo" -COPY ./extra_requirements.txt ./ -COPY ./.coveragerc ./ - -# Install extra requirement -RUN set -x; \ - /install/dev_package.sh \ - && pip install -r extra_requirements.txt \ - && /install/purge_dev_package_and_cache.sh - -WORKDIR "/" diff --git a/common/Dockerfile-onbuild b/common/Dockerfile-onbuild deleted file mode 100644 index 5e6d722c..00000000 --- a/common/Dockerfile-onbuild +++ /dev/null @@ -1,16 +0,0 @@ -MAINTAINER Camptocamp - -COPY ./.coveragerc /odoo/ - -# intermediate images should help speed up builds when only local-src, or only -# external-src changes -ONBUILD COPY ./src /odoo/src -ONBUILD COPY ./external-src /odoo/external-src -ONBUILD COPY ./local-src /odoo/local-src -ONBUILD COPY ./data /odoo/data -ONBUILD COPY ./songs /odoo/songs -ONBUILD COPY ./setup.py /odoo/ -ONBUILD COPY ./VERSION /odoo/ -ONBUILD COPY ./migration.yml /odoo/ -# need to be called at the end, because it installs . and src -ONBUILD RUN cd /odoo && pip install -r src_requirements.txt diff --git a/install/package_odoo_common_custom.sh b/install/package_odoo_common_custom.sh new file mode 100755 index 00000000..83f7cad5 --- /dev/null +++ b/install/package_odoo_common_custom.sh @@ -0,0 +1,31 @@ +#!/bin/bash +set -eo pipefail + +apt-get update -o Acquire::AllowInsecureRepositories=true +apt-get install -y --no-install-recommends \ + python3-html5lib \ + python3-odf \ + python3-pyinotify \ + python3-simplejson \ + python3-flake8 \ + python3-pytest \ + python3-pluggy \ + python3-coverage \ + python3-pytest-cov \ + python3-argh \ + python3-watchdog \ + python3-atomicwrites \ + python3-attrs \ + python3-beautifulsoup4 \ + python3-future \ + python3-mccabe \ + python3-more-itertools \ + python3-pbr \ + python3-pexpect \ + python3-ptyprocess \ + python3-py \ + python3-pycodestyle \ + python3-pyflakes \ + python3-unicodecsv \ + python3-wrapt \ + python3-disutils From b9936c3b2ab8808e66eac69bd30eb0520417c870 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Thu, 28 Nov 2024 11:49:51 +0100 Subject: [PATCH 4/7] fixup! fixup! fixup! fix: new flovar --- build.sh | 1 - setup.sh | 1 - 2 files changed, 2 deletions(-) diff --git a/build.sh b/build.sh index 108c6eb3..fad1b6a5 100755 --- a/build.sh +++ b/build.sh @@ -32,7 +32,6 @@ trap on_exit EXIT cp -r ${VERSION}/. ${TMP}/ cp -r bin/ ${TMP} -cp -rT common/ ${TMP} cp ${TMP}/Dockerfile-onbuild ${TMP}/Dockerfile-batteries-onbuild sed -i "1i FROM ${BUILD_TAG}" ${TMP}/Dockerfile-onbuild sed -i "1i FROM ${BUILD_TAG}" ${TMP}/Dockerfile-batteries diff --git a/setup.sh b/setup.sh index 0686e974..ace5dd1c 100644 --- a/setup.sh +++ b/setup.sh @@ -23,7 +23,6 @@ echo "Creating $SRC" cp -r ${VERSION}/. $SRC/ cp -r bin/ $SRC -cp -rT common/ $SRC cp -r install/ $SRC cp -r start-entrypoint.d/ $SRC cp -r before-migrate-entrypoint.d/ $SRC From ced9a073e9d31335cd8bd8090e8acf34056cd7f1 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Thu, 28 Nov 2024 11:57:54 +0100 Subject: [PATCH 5/7] fixup! fixup! fixup! fixup! fix: new flovar --- build.sh | 4 ---- install/package_odoo_common_custom.sh | 6 +++--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/build.sh b/build.sh index fad1b6a5..852c82ab 100755 --- a/build.sh +++ b/build.sh @@ -32,10 +32,6 @@ trap on_exit EXIT cp -r ${VERSION}/. ${TMP}/ cp -r bin/ ${TMP} -cp ${TMP}/Dockerfile-onbuild ${TMP}/Dockerfile-batteries-onbuild -sed -i "1i FROM ${BUILD_TAG}" ${TMP}/Dockerfile-onbuild -sed -i "1i FROM ${BUILD_TAG}" ${TMP}/Dockerfile-batteries -sed -i "1i FROM ${BUILD_TAG}-batteries" ${TMP}/Dockerfile-batteries-onbuild cp -r install/ ${TMP} cp -r start-entrypoint.d/ ${TMP} cp -r before-migrate-entrypoint.d/ ${TMP} diff --git a/install/package_odoo_common_custom.sh b/install/package_odoo_common_custom.sh index 83f7cad5..7d675563 100755 --- a/install/package_odoo_common_custom.sh +++ b/install/package_odoo_common_custom.sh @@ -15,8 +15,8 @@ apt-get install -y --no-install-recommends \ python3-argh \ python3-watchdog \ python3-atomicwrites \ - python3-attrs \ - python3-beautifulsoup4 \ + python3-attr \ + python3-bs4 \ python3-future \ python3-mccabe \ python3-more-itertools \ @@ -28,4 +28,4 @@ apt-get install -y --no-install-recommends \ python3-pyflakes \ python3-unicodecsv \ python3-wrapt \ - python3-disutils + python3-distutils From c59cc49bed2c3a4becaf0061bfd5b1d824020bc3 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Wed, 4 Dec 2024 14:10:13 +0100 Subject: [PATCH 6/7] fixup! fixup! fixup! fixup! fixup! fix: new flovar --- 17.0/Dockerfile | 8 ++++++-- 17.0/base_requirements.txt | 3 ++- example/Dockerfile | 2 ++ install/package_odoo_common_custom.sh | 3 ++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/17.0/Dockerfile b/17.0/Dockerfile index 048fe018..b0b860a4 100644 --- a/17.0/Dockerfile +++ b/17.0/Dockerfile @@ -17,8 +17,6 @@ ENV BUILD_PACKAGE \ git # run in a virtualenv -RUN python3 -m venv .venv -RUN . .venv/bin/activate # Install some deps, lessc and less-plugin-clean-css, and wkhtmltopdf # wkhtml-buster is kept as in official image, no deb available for bullseye RUN set -x; \ @@ -51,6 +49,12 @@ RUN adduser --disabled-password -u $UID --gecos '' odoo \ VOLUME ["/data/odoo", "/var/log/odoo"] USER odoo +#RUN python3 -m venv /odoo/.venv --system-site-packages +#RUN . /odoo/.venv/bin/activate + +RUN set -x; \ + sh -c pip install -r /odoo/base_requirements.txt --ignore-installed + # Expose Odoo services EXPOSE 8069 8072 diff --git a/17.0/base_requirements.txt b/17.0/base_requirements.txt index 9c0aeaa7..6ce0dafa 100644 --- a/17.0/base_requirements.txt +++ b/17.0/base_requirements.txt @@ -5,6 +5,7 @@ lxml-html-clean==0.4.1 # Migration tools -marabunta==0.12.0 +#marabunta==0.12.0 +-e git+https://github.com/camptocamp/marabunta@disutilsremoved#egg=marabunta -e git+https://github.com/camptocamp/anthem@master#egg=anthem diff --git a/example/Dockerfile b/example/Dockerfile index 3811e100..2b38b711 100644 --- a/example/Dockerfile +++ b/example/Dockerfile @@ -26,6 +26,8 @@ RUN set -x; \ #COPY ./requirements.txt /odoo/ USER odoo WORKDIR /odoo +# run in a virtualenv + RUN pip install --user -e . #RUN pip install --user -r requirements.txt diff --git a/install/package_odoo_common_custom.sh b/install/package_odoo_common_custom.sh index 7d675563..773be7fd 100755 --- a/install/package_odoo_common_custom.sh +++ b/install/package_odoo_common_custom.sh @@ -28,4 +28,5 @@ apt-get install -y --no-install-recommends \ python3-pyflakes \ python3-unicodecsv \ python3-wrapt \ - python3-distutils + python3-distutils \ + python3-apt From 7c8e501c4208d2e2b6c524cae458da7b3d875c30 Mon Sep 17 00:00:00 2001 From: vrenaville Date: Wed, 4 Dec 2024 14:20:48 +0100 Subject: [PATCH 7/7] fixup! fixup! fixup! fixup! fixup! fixup! fix: new flovar --- 17.0/Dockerfile | 4 ++-- 17.0/base_requirements.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/17.0/Dockerfile b/17.0/Dockerfile index b0b860a4..0e5d2fb1 100644 --- a/17.0/Dockerfile +++ b/17.0/Dockerfile @@ -49,8 +49,8 @@ RUN adduser --disabled-password -u $UID --gecos '' odoo \ VOLUME ["/data/odoo", "/var/log/odoo"] USER odoo -#RUN python3 -m venv /odoo/.venv --system-site-packages -#RUN . /odoo/.venv/bin/activate +RUN python3 -m venv /odoo/.venv --system-site-packages +RUN . /odoo/.venv/bin/activate RUN set -x; \ sh -c pip install -r /odoo/base_requirements.txt --ignore-installed diff --git a/17.0/base_requirements.txt b/17.0/base_requirements.txt index 6ce0dafa..4685b4b9 100644 --- a/17.0/base_requirements.txt +++ b/17.0/base_requirements.txt @@ -6,6 +6,6 @@ lxml-html-clean==0.4.1 # Migration tools #marabunta==0.12.0 --e git+https://github.com/camptocamp/marabunta@disutilsremoved#egg=marabunta +-e git+https://github.com/camptocamp/marabunta@disutilsremoved#egg=master -e git+https://github.com/camptocamp/anthem@master#egg=anthem