Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting issue while installing openwisp #4750

Open
prohit-rpatil opened this issue Nov 13, 2024 · 2 comments
Open

Getting issue while installing openwisp #4750

prohit-rpatil opened this issue Nov 13, 2024 · 2 comments
Labels
downstream Needs Triage Issues that need to be evaluated for severity and status.

Comments

@prohit-rpatil
Copy link

setuptools version

68.1.2

Python version

3.12

OS

Ubuntu 24.4

Additional environment information

No response

Description

TASK [openwisp.openwisp2 : Install openwisp2 controller and its dependencies] *******************************************************************************
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (5 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (4 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (3 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (2 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (1 retries left).
fatal: [192.168.144.170]: FAILED! => {"attempts": 5, "changed": false, "cmd": ["/opt/openwisp2/env/bin/pip3", "install", "-U", "openwisp-controller~=1.0.1", "service_identity"], "msg": "stdout: Collecting openwisp-controller~=1.0.1\n Using cached openwisp_controller-1.0.3-py2.py3-none-any.whl.metadata (139 kB)\nCollecting service_identity\n Using cached service_identity-24.2.0-py3-none-any.whl.metadata (5.1 kB)\nCollecting django-sortedm2m~=3.1.1 (from openwisp-controller~=1.0.1)\n Using cached django_sortedm2m-3.1.1-py2.py3-none-any.whl.metadata (19 kB)\nCollecting django-reversion~=4.0.1 (from openwisp-controller~=1.0.1)\n Using cached django_reversion-4.0.2-py3-none-any.whl.metadata (3.6 kB)\nCollecting django-x509~=1.1.0 (from openwisp-controller~=1.0.1)\n Using cached django_x509-1.1-py2.py3-none-any.whl.metadata (19 kB)\nCollecting django-taggit~=2.1.0 (from openwisp-controller~=1.0.1)\n Using cached django_taggit-2.1.0-py3-none-any.whl.metadata (3.5 kB)\nCollecting django-loci~=1.0.1 (from openwisp-controller~=1.0.1)\n Using cached django_loci-1.0.1-py2.py3-none-any.whl.metadata (16 kB)\nCollecting django-flat-json-widget~=0.2.0 (from openwisp-controller~=1.0.1)\n Using cached django_flat_json_widget-0.2-py2.py3-none-any.whl.metadata (5.1 kB)\nCollecting openwisp-utils~=1.0.1 (from openwisp-utils[rest]=1.0.1->openwisp-controller=1.0.1)\n Using cached openwisp_utils-1.0.5-py2.py3-none-any.whl.metadata (63 kB)\nCollecting netjsonconfig~=1.0.1 (from openwisp-controller~=1.0.1)\n Using cached netjsonconfig-1.0.2-py2.py3-none-any.whl.metadata (3.8 kB)\nCollecting openwisp-users~=1.0.0 (from openwisp-controller~=1.0.1)\n Using cached openwisp_users-1.0.2-py2.py3-none-any.whl.metadata (44 kB)\nCollecting openwisp-notifications~=1.0.0 (from openwisp-controller~=1.0.1)\n Using cached openwisp_notifications-1.0.3-py2.py3-none-any.whl.metadata (55 kB)\nCollecting openwisp-ipam~=1.0.0 (from openwisp-controller~=1.0.1)\n Using cached openwisp_ipam-1.0-py2.py3-none-any.whl.metadata (24 kB)\nCollecting djangorestframework-gis~=0.18.0 (from openwisp-controller~=1.0.1)\n Using cached djangorestframework_gis-0.18-py2.py3-none-any.whl.metadata (29 kB)\nCollecting paramiko~=2.10.3 (from paramiko[ed25519]=2.10.3->openwisp-controller=1.0.1)\n Using cached paramiko-2.10.6-py2.py3-none-any.whl.metadata (4.6 kB)\nCollecting scp~=0.14.2 (from openwisp-controller~=1.0.1)\n Using cached scp-0.14.5-py2.py3-none-any.whl.metadata (4.3 kB)\nCollecting celery~=5.2.3 (from openwisp-controller~=1.0.1)\n Using cached celery-5.2.7-py3-none-any.whl.metadata (20 kB)\nCollecting django-cache-memoize~=0.1 (from openwisp-controller~=1.0.1)\n Using cached django_cache_memoize-0.2.0-py3-none-any.whl.metadata (15 kB)\nCollecting shortuuid~=1.0.1 (from openwisp-controller~=1.0.1)\n Using cached shortuuid-1.0.13-py3-none-any.whl.metadata (5.8 kB)\nRequirement already satisfied: netaddr~=0.8.0 in /usr/lib/python3/dist-packages (from openwisp-controller~=1.0.1) (0.8.0)\nRequirement already satisfied: attrs>=19.1.0 in /opt/openwisp2/env/lib/python3.12/site-packages (from service_identity) (24.2.0)\nRequirement already satisfied: cryptography in /usr/lib/python3/dist-packages (from service_identity) (41.0.7)\nCollecting pyasn1 (from service_identity)\n Using cached pyasn1-0.6.1-py3-none-any.whl.metadata (8.4 kB)\nCollecting pyasn1-modules (from service_identity)\n Using cached pyasn1_modules-0.4.1-py3-none-any.whl.metadata (3.5 kB)\nRequirement already satisfied: pytz>=2021.3 in /usr/lib/python3/dist-packages (from celery~=5.2.3->openwisp-controller~=1.0.1) (2024.1)\nCollecting billiard<4.0,>=3.6.4.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached billiard-3.6.4.0-py3-none-any.whl.metadata (4.5 kB)\nCollecting kombu<6.0,>=5.2.3 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached kombu-5.4.2-py3-none-any.whl.metadata (3.2 kB)\nCollecting vine<6.0,>=5.0.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached vine-5.1.0-py3-none-any.whl.metadata (2.7 kB)\nRequirement already satisfied: click<9.0,>=8.0.3 in /usr/lib/python3/dist-packages (from celery~=5.2.3->openwisp-controller~=1.0.1) (8.1.6)\nCollecting click-didyoumean>=0.0.3 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached click_didyoumean-0.3.1-py3-none-any.whl.metadata (3.9 kB)\nCollecting click-repl>=0.2.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached click_repl-0.3.0-py3-none-any.whl.metadata (3.6 kB)\nCollecting click-plugins>=1.1.1 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n Using cached click_plugins-1.1.1-py2.py3-none-any.whl.metadata (6.4 kB)\nCollecting django<4.1.0,>=3.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n Using cached Django-4.0.10-py3-none-any.whl.metadata (4.1 kB)\nCollecting channels~=3.0.4 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n Using cached channels-3.0.5-py3-none-any.whl.metadata (1.3 kB)\nCollecting django-leaflet~=0.28.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n Using cached django_leaflet-0.28.3-py3-none-any.whl.metadata (16 kB)\nCollecting Pillow~=9.1.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n Using cached Pillow-9.1.1.tar.gz (49.8 MB)\n Preparing metadata (setup.py): started\n Preparing metadata (setup.py): finished with status 'error'\n\n:stderr: error: subprocess-exited-with-error\n \n × python setup.py egg_info did not run successfully.\n │ exit code: 1\n ╰─> [3 lines of output]\n /opt/openwisp2/env/lib/python3.12/site-packages/_distutils_hack/init.py:53: UserWarning: Reliance on distutils from stdlib is deprecated. Users must rely on setuptools to provide the distutils module. Avoid importing distutils or import setuptools first, and avoid setting SETUPTOOLS_USE_DISTUTILS=stdlib. Register concerns at https://github.com/pypa/setuptools/issues/new?template=distutils-deprecation.yml\n warnings.warn(\n ERROR: Can not execute setup.py since setuptools is not available in the build environment.\n [end of output]\n \n note: This error originates from a subprocess, and is likely not a problem with pip.\nerror: metadata-generation-failed\n\n× Encountered error while generating package metadata.\n╰─> See above for output.\n\nnote: This is an issue with the package mentioned above, not pip.\nhint: See above for details.\n"}

How to Reproduce

sudo apt install ansible-core
sudo apt install python3-pip
sudo apt install sshpass
sudo apt install curl
sudo apt install git
pip install Jinja2>=2.11 --break-system-packages
sudo ssh-keyscan -H 127.0.0.1 >> ~/.ssh/known_hosts
sudo ssh-keyscan -H 192.168.211.132 >> ~/.ssh/known_hosts
sudo ssh-keyscan -H localhost >> ~/.ssh/known_hosts
PermitRootLogin yes line in the /etc/ssh/sshd_config
should be able to ssh its own ip and also be added to sudoers
ansible-galaxy collection install "community.general:>=3.6.0" --force
ansible-galaxy collection install "ansible.posix" --force
ansible-galaxy install openwisp.openwisp2 --force
mkdir ~/openwisp2-ansible-playbook
cd ~/openwisp2-ansible-playbook

place below content in hosts file:

[openwisp2]
192.168.211.132

place below content in playbook.yml file

  • hosts: openwisp2
    roles:

    • openwisp.openwisp2

    the following line is needed only when an IP address is used as the inventory hostname

    vars:
    postfix_myhostname: localhost
          
    #ansible-playbook -i hosts playbook.yml -b -k -K --become-method=su
    ansible-playbook -i hosts playbook.yml -u ctadmin -k --become -K
    ======================================== OR
    now create playbook with :

  • hosts: openwisp2
    become: "{{ become | default('yes') }}"
    roles:

    • openwisp.openwisp2
      vars:
      openwisp2_radius: true
      openwisp2_freeradius_install: true

    set to false when you don't want to register openwisp-radius

    API endpoints.

    openwisp2_radius_urls: true
          
    =============================================================

Other detail

TASK [openwisp.openwisp2 : Install openwisp2 controller and its dependencies] *******************************************************************************
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (5 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (4 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (3 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (2 retries left).
FAILED - RETRYING: [192.168.144.170]: Install openwisp2 controller and its dependencies (1 retries left).
fatal: [192.168.144.170]: FAILED! => {"attempts": 5, "changed": false, "cmd": ["/opt/openwisp2/env/bin/pip3", "install", "-U", "openwisp-controller~=1.0.1", "service_identity"], "msg": "stdout: Collecting openwisp-controller~=1.0.1\n  Using cached openwisp_controller-1.0.3-py2.py3-none-any.whl.metadata (139 kB)\nCollecting service_identity\n  Using cached service_identity-24.2.0-py3-none-any.whl.metadata (5.1 kB)\nCollecting django-sortedm2m~=3.1.1 (from openwisp-controller~=1.0.1)\n  Using cached django_sortedm2m-3.1.1-py2.py3-none-any.whl.metadata (19 kB)\nCollecting django-reversion~=4.0.1 (from openwisp-controller~=1.0.1)\n  Using cached django_reversion-4.0.2-py3-none-any.whl.metadata (3.6 kB)\nCollecting django-x509~=1.1.0 (from openwisp-controller~=1.0.1)\n  Using cached django_x509-1.1-py2.py3-none-any.whl.metadata (19 kB)\nCollecting django-taggit~=2.1.0 (from openwisp-controller~=1.0.1)\n  Using cached django_taggit-2.1.0-py3-none-any.whl.metadata (3.5 kB)\nCollecting django-loci~=1.0.1 (from openwisp-controller~=1.0.1)\n  Using cached django_loci-1.0.1-py2.py3-none-any.whl.metadata (16 kB)\nCollecting django-flat-json-widget~=0.2.0 (from openwisp-controller~=1.0.1)\n  Using cached django_flat_json_widget-0.2-py2.py3-none-any.whl.metadata (5.1 kB)\nCollecting openwisp-utils~=1.0.1 (from openwisp-utils[rest]~=1.0.1->openwisp-controller~=1.0.1)\n  Using cached openwisp_utils-1.0.5-py2.py3-none-any.whl.metadata (63 kB)\nCollecting netjsonconfig~=1.0.1 (from openwisp-controller~=1.0.1)\n  Using cached netjsonconfig-1.0.2-py2.py3-none-any.whl.metadata (3.8 kB)\nCollecting openwisp-users~=1.0.0 (from openwisp-controller~=1.0.1)\n  Using cached openwisp_users-1.0.2-py2.py3-none-any.whl.metadata (44 kB)\nCollecting openwisp-notifications~=1.0.0 (from openwisp-controller~=1.0.1)\n  Using cached openwisp_notifications-1.0.3-py2.py3-none-any.whl.metadata (55 kB)\nCollecting openwisp-ipam~=1.0.0 (from openwisp-controller~=1.0.1)\n  Using cached openwisp_ipam-1.0-py2.py3-none-any.whl.metadata (24 kB)\nCollecting djangorestframework-gis~=0.18.0 (from openwisp-controller~=1.0.1)\n  Using cached djangorestframework_gis-0.18-py2.py3-none-any.whl.metadata (29 kB)\nCollecting paramiko~=2.10.3 (from paramiko[ed25519]~=2.10.3->openwisp-controller~=1.0.1)\n  Using cached paramiko-2.10.6-py2.py3-none-any.whl.metadata (4.6 kB)\nCollecting scp~=0.14.2 (from openwisp-controller~=1.0.1)\n  Using cached scp-0.14.5-py2.py3-none-any.whl.metadata (4.3 kB)\nCollecting celery~=5.2.3 (from openwisp-controller~=1.0.1)\n  Using cached celery-5.2.7-py3-none-any.whl.metadata (20 kB)\nCollecting django-cache-memoize~=0.1 (from openwisp-controller~=1.0.1)\n  Using cached django_cache_memoize-0.2.0-py3-none-any.whl.metadata (15 kB)\nCollecting shortuuid~=1.0.1 (from openwisp-controller~=1.0.1)\n  Using cached shortuuid-1.0.13-py3-none-any.whl.metadata (5.8 kB)\nRequirement already satisfied: netaddr~=0.8.0 in /usr/lib/python3/dist-packages (from openwisp-controller~=1.0.1) (0.8.0)\nRequirement already satisfied: attrs>=19.1.0 in /opt/openwisp2/env/lib/python3.12/site-packages (from service_identity) (24.2.0)\nRequirement already satisfied: cryptography in /usr/lib/python3/dist-packages (from service_identity) (41.0.7)\nCollecting pyasn1 (from service_identity)\n  Using cached pyasn1-0.6.1-py3-none-any.whl.metadata (8.4 kB)\nCollecting pyasn1-modules (from service_identity)\n  Using cached pyasn1_modules-0.4.1-py3-none-any.whl.metadata (3.5 kB)\nRequirement already satisfied: pytz>=2021.3 in /usr/lib/python3/dist-packages (from celery~=5.2.3->openwisp-controller~=1.0.1) (2024.1)\nCollecting billiard<4.0,>=3.6.4.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached billiard-3.6.4.0-py3-none-any.whl.metadata (4.5 kB)\nCollecting kombu<6.0,>=5.2.3 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached kombu-5.4.2-py3-none-any.whl.metadata (3.2 kB)\nCollecting vine<6.0,>=5.0.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached vine-5.1.0-py3-none-any.whl.metadata (2.7 kB)\nRequirement already satisfied: click<9.0,>=8.0.3 in /usr/lib/python3/dist-packages (from celery~=5.2.3->openwisp-controller~=1.0.1) (8.1.6)\nCollecting click-didyoumean>=0.0.3 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached click_didyoumean-0.3.1-py3-none-any.whl.metadata (3.9 kB)\nCollecting click-repl>=0.2.0 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached click_repl-0.3.0-py3-none-any.whl.metadata (3.6 kB)\nCollecting click-plugins>=1.1.1 (from celery~=5.2.3->openwisp-controller~=1.0.1)\n  Using cached click_plugins-1.1.1-py2.py3-none-any.whl.metadata (6.4 kB)\nCollecting django<4.1.0,>=3.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n  Using cached Django-4.0.10-py3-none-any.whl.metadata (4.1 kB)\nCollecting channels~=3.0.4 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n  Using cached channels-3.0.5-py3-none-any.whl.metadata (1.3 kB)\nCollecting django-leaflet~=0.28.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n  Using cached django_leaflet-0.28.3-py3-none-any.whl.metadata (16 kB)\nCollecting Pillow~=9.1.0 (from django-loci~=1.0.1->openwisp-controller~=1.0.1)\n  Using cached Pillow-9.1.1.tar.gz (49.8 MB)\n  Preparing metadata (setup.py): started\n  Preparing metadata (setup.py): finished with status 'error'\n\n:stderr:   error: subprocess-exited-with-error\n  \n  × python setup.py egg_info did not run successfully.\n  │ exit code: 1\n  ╰─> [3 lines of output]\n      /opt/openwisp2/env/lib/python3.12/site-packages/_distutils_hack/__init__.py:53: UserWarning: Reliance on distutils from stdlib is deprecated. Users must rely on setuptools to provide the distutils module. Avoid importing distutils or import setuptools first, and avoid setting SETUPTOOLS_USE_DISTUTILS=stdlib. Register concerns at https://github.com/pypa/setuptools/issues/new?template=distutils-deprecation.yml\n        warnings.warn(\n      ERROR: Can not execute `setup.py` since setuptools is not available in the build environment.\n      [end of output]\n  \n  note: This error originates from a subprocess, and is likely not a problem with pip.\nerror: metadata-generation-failed\n\n× Encountered error while generating package metadata.\n╰─> See above for output.\n\nnote: This is an issue with the package mentioned above, not pip.\nhint: See above for details.\n"}

@prohit-rpatil prohit-rpatil added distutils deprecation issues stemming from #4137 Needs Triage Issues that need to be evaluated for severity and status. labels Nov 13, 2024
@abravalheri
Copy link
Contributor

abravalheri commented Nov 13, 2024

Hi, you may try to install the package with pip install --use-pep517 ..., if it fail, I recommend contacting the package maintainers directly to notify the package needs maintenance (e.g. it needs an appropriate pyproject.toml file, which may be missing)

@abravalheri
Copy link
Contributor

Sometimes updating to a more recent version of the package also helps.

@abravalheri abravalheri added downstream and removed distutils deprecation issues stemming from #4137 labels Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
downstream Needs Triage Issues that need to be evaluated for severity and status.
Projects
None yet
Development

No branches or pull requests

2 participants