From e65d075c179c4e60b558da4ace50b7afe547ffcb Mon Sep 17 00:00:00 2001 From: David Schmitz Date: Wed, 23 Oct 2024 14:45:57 +0000 Subject: [PATCH] install-debian.sh: added possibility to override and specifiy alternative requirements.txt for python dependencies --- install-centos.sh | 6 +- install-debian.sh | 16 ++-- .../requirements-centos.txt | 0 .../requirements.txt.freeze-py3.10.12 | 81 ++++++++++++++++++ .../requirements.txt.freeze-py3.8.10 | 82 +++++++++++++++++++ .../requirements.txt.python3.10.12 | 81 ++++++++++++++++++ .../requirements.txt.python3.6.8 | 0 .../requirements.txt.python3.7.3 | 0 .../requirements.txt.python3.8.10 | 82 +++++++++++++++++++ 9 files changed, 338 insertions(+), 10 deletions(-) rename requirements-centos.txt => requirements.txt.d/requirements-centos.txt (100%) create mode 100644 requirements.txt.d/requirements.txt.freeze-py3.10.12 create mode 100644 requirements.txt.d/requirements.txt.freeze-py3.8.10 create mode 100644 requirements.txt.d/requirements.txt.python3.10.12 rename requirements.txt.python3.6.8 => requirements.txt.d/requirements.txt.python3.6.8 (100%) rename requirements.txt.python3.7.3 => requirements.txt.d/requirements.txt.python3.7.3 (100%) create mode 100644 requirements.txt.d/requirements.txt.python3.8.10 diff --git a/install-centos.sh b/install-centos.sh index 4167658b..fb03305b 100755 --- a/install-centos.sh +++ b/install-centos.sh @@ -502,10 +502,12 @@ fi python_version="$(python3 --version | cut -d ' ' -f 2,2)" if [ "$assume__sqlite_version__to_old" = 1 ]; then echo "$0: assume__sqlite_version__to_old=$assume__sqlite_version__to_old => using requirements-centos.txt" 1>&2 - cp "$fod_dir/requirements-centos.txt" "$fod_dir/requirements.txt" + #cp "$fod_dir/requirements-centos.txt" "$fod_dir/requirements.txt" + cp "$fod_dir/requirements.txt.d/requirements-centos.txt" "$fod_dir/requirements.txt" elif [ -e "$fod_dir/requirements.txt.python$python_version" ]; then echo "$0: using python version specific $fod_dir/requirements.txt.python$python_version" 1>&2 - cp "$fod_dir/requirements.txt.python$python_version" "$fod_dir/requirements.txt" + #cp "$fod_dir/requirements.txt.python$python_version" "$fod_dir/requirements.txt" + cp "$fod_dir/requirements.txt.d/requirements.txt.python$python_version" "$fod_dir/requirements.txt" else echo "$0: using $fod_dir/requirements.txt" 1>&2 fi diff --git a/install-debian.sh b/install-debian.sh index c1c2a61e..eaea2fe3 100755 --- a/install-debian.sh +++ b/install-debian.sh @@ -140,8 +140,8 @@ findfix_file_permissions=1 # -requirements_txt__file__basename__default="requirements.txt" -requirements_txt__file__basename="$requirements_txt__file__basename__default" +requirements_txt__filename_relative__default="requirements.txt" +requirements_txt__filename_relative="$requirements_txt__filename_relative__default" ############################################################################## ############################################################################## @@ -350,7 +350,7 @@ while [ $# -gt 0 ]; do install_fodproper=1 elif [ $# -ge 1 -a \( "$1" = "--pyrequirements" \) ]; then shift 1 - requirements_txt__file__basename="$1" + requirements_txt__filename_relative="$1" shift 1 elif [ "$1" = "--show-env" ]; then shift 1 @@ -674,15 +674,15 @@ python_version="$(python3 --version | cut -d ' ' -f 2,2)" #if [ "$assume__sqlite_version__to_old" = 1 ]; then # echo "$0: assume__sqlite_version__to_old=$assume__sqlite_version__to_old => using requirements-centos.txt" 1>&2 # cp "$fod_dir/requirements-centos.txt" "$fod_dir/requirements.txt" -if [ "$requirements_txt__file__basename" != "$requirements_txt__file__basename__default" ]; then - echo "python reqs: using $fod_dir/$requirements_txt__file__basename" 1>&2 - cp -f "$fod_dir/$requirements_txt__file__basename" "$fod_dir/requirements.txt" +if [ "$requirements_txt__filename_relative" != "$requirements_txt__filename_relative__default" ]; then + echo "python reqs: using $fod_dir/$requirements_txt__filename_relative" 1>&2 + cp -f "$fod_dir/$requirements_txt__filename_relative" "$fod_dir/requirements.txt" else if [ -e "$fod_dir/requirements.txt.python$python_version" ]; then echo "python reqs: using python version specific $fod_dir/requirements.txt.python$python_version" 1>&2 - cp -f "$fod_dir/requirements.txt.python$python_version" "$fod_dir/requirements.txt" + cp -f "$fod_dir/requirements.txt.d/requirements.txt.python$python_version" "$fod_dir/requirements.txt" else - echo "python reqs: using default $fod_dir/$requirements_txt__file__basename__default" 1>&2 + echo "python reqs: using default $fod_dir/$requirements_txt__filename_relative__default" 1>&2 fi fi diff --git a/requirements-centos.txt b/requirements.txt.d/requirements-centos.txt similarity index 100% rename from requirements-centos.txt rename to requirements.txt.d/requirements-centos.txt diff --git a/requirements.txt.d/requirements.txt.freeze-py3.10.12 b/requirements.txt.d/requirements.txt.freeze-py3.10.12 new file mode 100644 index 00000000..14ee7cc7 --- /dev/null +++ b/requirements.txt.d/requirements.txt.freeze-py3.10.12 @@ -0,0 +1,81 @@ +amqp==5.2.0 +anyjson==0.3.3 +appdirs==1.4.4 +asgiref==3.8.1 +async-timeout==4.0.3 +attrs==24.2.0 +bcrypt==4.2.0 +billiard==3.6.4.0 +celery==5.2.3 +certifi==2024.8.30 +cffi==1.17.1 +charset-normalizer==3.4.0 +cl==0.0.3 +click==8.1.7 +click-didyoumean==0.3.1 +click-plugins==1.1.1 +click-repl==0.3.0 +confusable-homoglyphs==3.3.1 +cryptography==43.0.1 +Django==3.2.16 +django-admin==2.0.2 +django-excel-response2==3.0.6 +django-form-utils==1.0.3 +django-picklefield==2.0 +django-registration==3.1.2 +django-settings-export==1.2.1 +django-six==1.0.5 +django-tinymce==4.1.0 +djangorestframework==3.12.0 +excel-base==1.0.4 +gevent==24.10.2 +greenlet==3.1.1 +gunicorn==23.0.0 +idna==3.10 +iniconfig==2.0.0 +intervaltree==3.1.0 +ipaddress==1.0.23 +isoweek==1.3.3 +kombu==5.2.3 +longerusername==0.4 +lxml==5.3.0 +mailer==0.8.1 +mysqlclient==2.2.4 +ncclient==0.6.16 +packaging==24.1 +paramiko==3.5.0 +pluggy==1.5.0 +ply==3.11 +prompt_toolkit==3.0.48 +psutil==6.1.0 +py==1.11.0 +pyasn1==0.4.8 +pycparser==2.22 +pycrypto==2.6.1 +PyNaCl==1.5.0 +pyparsing==3.2.0 +pysmi==1.2.1 +pysnmp==5.1.0 +pysnmpcrypto==0.0.4 +pytest==6.2.5 +pytest-django==4.4.0 +python-dateutil==2.9.0.post0 +python-memcached==1.62 +pytz==2024.2 +PyYAML==6.0.2 +redis==5.1.1 +requests==2.32.3 +screen==1.0.1 +six==1.16.0 +sortedcontainers==2.4.0 +sqlparse==0.5.1 +TimeConvert==3.0.13 +toml==0.10.2 +typing_extensions==4.12.2 +tzlocal==5.2 +urllib3==2.2.3 +vine==5.1.0 +wcwidth==0.2.13 +xlwt==1.3.0 +zope.event==5.0 +zope.interface==7.1.0 diff --git a/requirements.txt.d/requirements.txt.freeze-py3.8.10 b/requirements.txt.d/requirements.txt.freeze-py3.8.10 new file mode 100644 index 00000000..5a174ae9 --- /dev/null +++ b/requirements.txt.d/requirements.txt.freeze-py3.8.10 @@ -0,0 +1,82 @@ +amqp==5.2.0 +anyjson==0.3.3 +appdirs==1.4.4 +asgiref==3.8.1 +async-timeout==4.0.3 +attrs==24.2.0 +backports.zoneinfo==0.2.1 +bcrypt==4.2.0 +billiard==3.6.4.0 +celery==5.2.3 +certifi==2024.8.30 +cffi==1.17.1 +charset-normalizer==3.4.0 +cl==0.0.3 +click==8.1.7 +click-didyoumean==0.3.1 +click-plugins==1.1.1 +click-repl==0.3.0 +confusable-homoglyphs==3.3.1 +cryptography==43.0.3 +Django==3.2.16 +django-admin==2.0.2 +django-excel-response2==3.0.6 +django-form-utils==1.0.3 +django-picklefield==2.0 +django-registration==3.1.2 +django-settings-export==1.2.1 +django-six==1.0.5 +django-tinymce==4.1.0 +djangorestframework==3.12.0 +excel-base==1.0.4 +gevent==24.2.1 +greenlet==3.1.1 +gunicorn==23.0.0 +idna==3.10 +iniconfig==2.0.0 +intervaltree==3.1.0 +ipaddress==1.0.23 +isoweek==1.3.3 +kombu==5.2.3 +longerusername==0.4 +lxml==5.3.0 +mailer==0.8.1 +mysqlclient==2.2.5 +ncclient==0.6.16 +packaging==24.1 +paramiko==3.5.0 +pluggy==1.5.0 +ply==3.11 +prompt-toolkit==3.0.48 +psutil==6.1.0 +py==1.11.0 +pyasn1==0.4.8 +pycparser==2.22 +pycrypto==2.6.1 +PyNaCl==1.5.0 +pyparsing==3.1.4 +pysmi==1.2.1 +pysnmp==5.1.0 +pysnmpcrypto==0.0.4 +pytest==6.2.5 +pytest-django==4.4.0 +python-dateutil==2.9.0.post0 +python-memcached==1.62 +pytz==2024.2 +PyYAML==6.0.2 +redis==5.1.1 +requests==2.32.3 +screen==1.0.1 +six==1.16.0 +sortedcontainers==2.4.0 +sqlparse==0.5.1 +TimeConvert==3.0.13 +toml==0.10.2 +typing-extensions==4.12.2 +tzlocal==5.2 +urllib3==2.2.3 +vine==5.1.0 +wcwidth==0.2.13 +xlwt==1.3.0 +zope.event==5.0 +zope.interface==7.1.0 diff --git a/requirements.txt.d/requirements.txt.python3.10.12 b/requirements.txt.d/requirements.txt.python3.10.12 new file mode 100644 index 00000000..14ee7cc7 --- /dev/null +++ b/requirements.txt.d/requirements.txt.python3.10.12 @@ -0,0 +1,81 @@ +amqp==5.2.0 +anyjson==0.3.3 +appdirs==1.4.4 +asgiref==3.8.1 +async-timeout==4.0.3 +attrs==24.2.0 +bcrypt==4.2.0 +billiard==3.6.4.0 +celery==5.2.3 +certifi==2024.8.30 +cffi==1.17.1 +charset-normalizer==3.4.0 +cl==0.0.3 +click==8.1.7 +click-didyoumean==0.3.1 +click-plugins==1.1.1 +click-repl==0.3.0 +confusable-homoglyphs==3.3.1 +cryptography==43.0.1 +Django==3.2.16 +django-admin==2.0.2 +django-excel-response2==3.0.6 +django-form-utils==1.0.3 +django-picklefield==2.0 +django-registration==3.1.2 +django-settings-export==1.2.1 +django-six==1.0.5 +django-tinymce==4.1.0 +djangorestframework==3.12.0 +excel-base==1.0.4 +gevent==24.10.2 +greenlet==3.1.1 +gunicorn==23.0.0 +idna==3.10 +iniconfig==2.0.0 +intervaltree==3.1.0 +ipaddress==1.0.23 +isoweek==1.3.3 +kombu==5.2.3 +longerusername==0.4 +lxml==5.3.0 +mailer==0.8.1 +mysqlclient==2.2.4 +ncclient==0.6.16 +packaging==24.1 +paramiko==3.5.0 +pluggy==1.5.0 +ply==3.11 +prompt_toolkit==3.0.48 +psutil==6.1.0 +py==1.11.0 +pyasn1==0.4.8 +pycparser==2.22 +pycrypto==2.6.1 +PyNaCl==1.5.0 +pyparsing==3.2.0 +pysmi==1.2.1 +pysnmp==5.1.0 +pysnmpcrypto==0.0.4 +pytest==6.2.5 +pytest-django==4.4.0 +python-dateutil==2.9.0.post0 +python-memcached==1.62 +pytz==2024.2 +PyYAML==6.0.2 +redis==5.1.1 +requests==2.32.3 +screen==1.0.1 +six==1.16.0 +sortedcontainers==2.4.0 +sqlparse==0.5.1 +TimeConvert==3.0.13 +toml==0.10.2 +typing_extensions==4.12.2 +tzlocal==5.2 +urllib3==2.2.3 +vine==5.1.0 +wcwidth==0.2.13 +xlwt==1.3.0 +zope.event==5.0 +zope.interface==7.1.0 diff --git a/requirements.txt.python3.6.8 b/requirements.txt.d/requirements.txt.python3.6.8 similarity index 100% rename from requirements.txt.python3.6.8 rename to requirements.txt.d/requirements.txt.python3.6.8 diff --git a/requirements.txt.python3.7.3 b/requirements.txt.d/requirements.txt.python3.7.3 similarity index 100% rename from requirements.txt.python3.7.3 rename to requirements.txt.d/requirements.txt.python3.7.3 diff --git a/requirements.txt.d/requirements.txt.python3.8.10 b/requirements.txt.d/requirements.txt.python3.8.10 new file mode 100644 index 00000000..5a174ae9 --- /dev/null +++ b/requirements.txt.d/requirements.txt.python3.8.10 @@ -0,0 +1,82 @@ +amqp==5.2.0 +anyjson==0.3.3 +appdirs==1.4.4 +asgiref==3.8.1 +async-timeout==4.0.3 +attrs==24.2.0 +backports.zoneinfo==0.2.1 +bcrypt==4.2.0 +billiard==3.6.4.0 +celery==5.2.3 +certifi==2024.8.30 +cffi==1.17.1 +charset-normalizer==3.4.0 +cl==0.0.3 +click==8.1.7 +click-didyoumean==0.3.1 +click-plugins==1.1.1 +click-repl==0.3.0 +confusable-homoglyphs==3.3.1 +cryptography==43.0.3 +Django==3.2.16 +django-admin==2.0.2 +django-excel-response2==3.0.6 +django-form-utils==1.0.3 +django-picklefield==2.0 +django-registration==3.1.2 +django-settings-export==1.2.1 +django-six==1.0.5 +django-tinymce==4.1.0 +djangorestframework==3.12.0 +excel-base==1.0.4 +gevent==24.2.1 +greenlet==3.1.1 +gunicorn==23.0.0 +idna==3.10 +iniconfig==2.0.0 +intervaltree==3.1.0 +ipaddress==1.0.23 +isoweek==1.3.3 +kombu==5.2.3 +longerusername==0.4 +lxml==5.3.0 +mailer==0.8.1 +mysqlclient==2.2.5 +ncclient==0.6.16 +packaging==24.1 +paramiko==3.5.0 +pluggy==1.5.0 +ply==3.11 +prompt-toolkit==3.0.48 +psutil==6.1.0 +py==1.11.0 +pyasn1==0.4.8 +pycparser==2.22 +pycrypto==2.6.1 +PyNaCl==1.5.0 +pyparsing==3.1.4 +pysmi==1.2.1 +pysnmp==5.1.0 +pysnmpcrypto==0.0.4 +pytest==6.2.5 +pytest-django==4.4.0 +python-dateutil==2.9.0.post0 +python-memcached==1.62 +pytz==2024.2 +PyYAML==6.0.2 +redis==5.1.1 +requests==2.32.3 +screen==1.0.1 +six==1.16.0 +sortedcontainers==2.4.0 +sqlparse==0.5.1 +TimeConvert==3.0.13 +toml==0.10.2 +typing-extensions==4.12.2 +tzlocal==5.2 +urllib3==2.2.3 +vine==5.1.0 +wcwidth==0.2.13 +xlwt==1.3.0 +zope.event==5.0 +zope.interface==7.1.0