The error was: ImportError: No module named pkg_resources

Hi,

I am new to the Koa deployment. I’m trying to install the builds (Koa.2, Koa.2a, Koa.Master), everything show different error each time, I’m sticking to version Koa.2. When I’m installing I’m getting the following error, I can’t find any help and a post in the same forum have a suggested step as fix, but that also doesn’t help.

**Error**:
*--------------------------------------*
*TASK [common : pip install virtualenv] ******************************************
*An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ImportError: No module named pkg_resources*
*fatal: [127.0.0.1]: FAILED! => {“changed”: false, “msg”: “Failed to import the required Python library (setuptools) on aabsc.abc.com’s Python /usr/bin/python. Please read module documentation and install in the appropriate location”}*
*--------------------------------------*

If someone come across the same issue and found a fix, please help me with the solution. Thanks and appreciating it.

Regards, Kums

@kumsm I’d recommend trying with koa.2a (koa.2 had a major bug - see Koa.2a has been tagged).

Could you provide more information to help with debugging? How are you building/deploying this (devstack, native installation, etc.)?

Failed to import the required Python library (setuptools) on aabsc.abc.com’s Python /usr/bin/python

What version is /usr/bin/python here?

Hi,

Thank you soo much.

I have fixed the error by “ln -s /usr/sbin/python3 /usr/sbin/python”. but after that again a new type of error thrown. :frowning:

----------- New error ------------
: Install edx_ansible venv requirements] **********************************************************
[0;31mfailed: [127.0.0.1] (item=/edx/app/edx_ansible/edx_ansible/pre-requirements.txt) => {“ansible_loop_var”: “item”, “changed”: false, “cmd”: ["/edx/app/edx_ansible/venvs/edx_ansible/bin/pip3", “install”, “-i”, “https://pypi.python.org/simple”, “-r”, “/edx/app/edx_ansible/edx_ansible/requirements.txt”], “item”: “/edx/app/edx_ansible/edx_ansible/pre-requirements.txt”, “msg”: “stdout: Looking in indexes: https://pypi.python.org/simple\nRequirement already satisfied: ansible==2.8.15 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 7)) (2.8.15)\nRequirement already satisfied: awscli==1.16.309 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 8)) (1.16.309)\nRequirement already satisfied: bcrypt==3.1.7 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 9)) (3.1.7)\nRequirement already satisfied: boto3==1.10.45 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 10)) (1.10.45)\nRequirement already satisfied: boto==2.48.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 11)) (2.48.0)\nRequirement already satisfied: botocore==1.13.45 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 12)) (1.13.45)\nRequirement already satisfied: certifi==2020.6.20 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 13)) (2020.6.20)\nRequirement already satisfied: cffi==1.14.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 14)) (1.14.2)\nRequirement already satisfied: chardet==3.0.4 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 15)) (3.0.4)\nCollecting colorama==0.4.1\n Using cached colorama-0.4.1-py2.py3-none-any.whl (15 kB)\nCollecting cryptography==3.1\n Using cached cryptography-3.1-cp35-abi3-manylinux2010_x86_64.whl (2.6 MB)\nRequirement already satisfied: datadog==0.8.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 18)) (0.8.0)\nRequirement already satisfied: decorator==4.4.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 19)) (4.4.2)\nRequirement already satisfied: docopt==0.6.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 20)) (0.6.2)\nRequirement already satisfied: docutils==0.15.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 21)) (0.15.2)\nRequirement already satisfied: ecdsa==0.13.3 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 22)) (0.13.3)\nRequirement already satisfied: idna==2.7 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 23)) (2.7)\nCollecting jinja2==2.8\n Using cached Jinja2-2.8-py2.py3-none-any.whl (263 kB)\nRequirement already satisfied: jmespath==0.10.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 25)) (0.10.0)\nRequirement already satisfied: markupsafe==1.1.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 26)) (1.1.1)\nRequirement already satisfied: mysqlclient==1.4.6 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 27)) (1.4.6)\nRequirement already satisfied: networkx==1.11 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 28)) (1.11)\nCollecting paramiko==2.4.2\n Using cached paramiko-2.4.2-py2.py3-none-any.whl (193 kB)\nRequirement already satisfied: pathlib2==2.3.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 30)) (2.3.0)\nRequirement already satisfied: prettytable==0.7.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 31)) (0.7.2)\nRequirement already satisfied: pyasn1==0.4.8 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 32)) (0.4.8)\nRequirement already satisfied: pycparser==2.20 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 33)) (2.20)\nRequirement already satisfied: pycrypto==2.6.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 34)) (2.6.1)\nCollecting pymongo==3.9.0\n Using cached pymongo-3.9.0-cp38-cp38-linux_x86_64.whl\nCollecting pynacl==1.4.0\n Using cached PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl (961 kB)\nRequirement already satisfied: python-dateutil==2.8.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 37)) (2.8.1)\nCollecting pyyaml==5.2\n Using cached PyYAML-5.2-cp38-cp38-linux_x86_64.whl\nCollecting requests==2.20.0\n Using cached requests-2.20.0-py2.py3-none-any.whl (60 kB)\nRequirement already satisfied: rsa==3.4.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 40)) (3.4.2)\nRequirement already satisfied: s3transfer==0.2.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 41)) (0.2.1)\nRequirement already satisfied: six==1.15.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 42)) (1.15.0)\nRequirement already satisfied: urllib3==1.24.3 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 43)) (1.24.3)\nInstalling collected packages: requests, pyyaml, pynacl, jinja2, cryptography, colorama, pymongo, paramiko\n Attempting uninstall: requests\n Found existing installation: requests 2.23.0\n Uninstalling requests-2.23.0:\n Successfully uninstalled requests-2.23.0\n\n:stderr: ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: ‘RECORD’\nConsider using the --user option or check the permissions.\n\n”}[0m
[0;31mfailed: [127.0.0.1] (item=/edx/app/edx_ansible/edx_ansible/requirements.txt) => {“ansible_loop_var”: “item”, “changed”: false, “cmd”: ["/edx/app/edx_ansible/venvs/edx_ansible/bin/pip3", “install”, “-i”, “https://pypi.python.org/simple”, “-r”, “/edx/app/edx_ansible/edx_ansible/requirements.txt”], “item”: “/edx/app/edx_ansible/edx_ansible/requirements.txt”, “msg”: “stdout: Looking in indexes: https://pypi.python.org/simple\nRequirement already satisfied: ansible==2.8.15 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 7)) (2.8.15)\nRequirement already satisfied: awscli==1.16.309 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 8)) (1.16.309)\nRequirement already satisfied: bcrypt==3.1.7 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 9)) (3.1.7)\nRequirement already satisfied: boto3==1.10.45 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 10)) (1.10.45)\nRequirement already satisfied: boto==2.48.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 11)) (2.48.0)\nRequirement already satisfied: botocore==1.13.45 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 12)) (1.13.45)\nRequirement already satisfied: certifi==2020.6.20 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 13)) (2020.6.20)\nRequirement already satisfied: cffi==1.14.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 14)) (1.14.2)\nRequirement already satisfied: chardet==3.0.4 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 15)) (3.0.4)\nCollecting colorama==0.4.1\n Using cached colorama-0.4.1-py2.py3-none-any.whl (15 kB)\nCollecting cryptography==3.1\n Using cached cryptography-3.1-cp35-abi3-manylinux2010_x86_64.whl (2.6 MB)\nRequirement already satisfied: datadog==0.8.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 18)) (0.8.0)\nRequirement already satisfied: decorator==4.4.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 19)) (4.4.2)\nRequirement already satisfied: docopt==0.6.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 20)) (0.6.2)\nRequirement already satisfied: docutils==0.15.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 21)) (0.15.2)\nRequirement already satisfied: ecdsa==0.13.3 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 22)) (0.13.3)\nRequirement already satisfied: idna==2.7 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 23)) (2.7)\nCollecting jinja2==2.8\n Using cached Jinja2-2.8-py2.py3-none-any.whl (263 kB)\nRequirement already satisfied: jmespath==0.10.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 25)) (0.10.0)\nRequirement already satisfied: markupsafe==1.1.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 26)) (1.1.1)\nRequirement already satisfied: mysqlclient==1.4.6 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 27)) (1.4.6)\nRequirement already satisfied: networkx==1.11 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 28)) (1.11)\nCollecting paramiko==2.4.2\n Using cached paramiko-2.4.2-py2.py3-none-any.whl (193 kB)\nRequirement already satisfied: pathlib2==2.3.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 30)) (2.3.0)\nRequirement already satisfied: prettytable==0.7.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 31)) (0.7.2)\nRequirement already satisfied: pyasn1==0.4.8 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 32)) (0.4.8)\nRequirement already satisfied: pycparser==2.20 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 33)) (2.20)\nRequirement already satisfied: pycrypto==2.6.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 34)) (2.6.1)\nCollecting pymongo==3.9.0\n Using cached pymongo-3.9.0-cp38-cp38-linux_x86_64.whl\nCollecting pynacl==1.4.0\n Using cached PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl (961 kB)\nRequirement already satisfied: python-dateutil==2.8.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 37)) (2.8.1)\nCollecting pyyaml==5.2\n Using cached PyYAML-5.2-cp38-cp38-linux_x86_64.whl\nRequirement already satisfied: requests==2.20.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 39)) (2.20.0)\nRequirement already satisfied: rsa==3.4.2 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 40)) (3.4.2)\nRequirement already satisfied: s3transfer==0.2.1 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 41)) (0.2.1)\nRequirement already satisfied: six==1.15.0 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 42)) (1.15.0)\nRequirement already satisfied: urllib3==1.24.3 in /edx/app/edx_ansible/venvs/edx_ansible/lib/python3.8/site-packages (from -r /edx/app/edx_ansible/edx_ansible/requirements.txt (line 43)) (1.24.3)\nInstalling collected packages: pyyaml, pynacl, jinja2, cryptography, colorama, pymongo, paramiko\n Attempting uninstall: pyyaml\n Found existing installation: PyYAML 5.3.1\n Uninstalling PyYAML-5.3.1:\n Successfully uninstalled PyYAML-5.3.1\n\n:stderr: ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: ‘RECORD’\nConsider using the --user option or check the permissions.\n\n”}[0m


[0;31m127.0.0.1[0m : [0;32mok=29 [0m [0;33mchanged=2 [0m unreachable=0 [0;31mfailed=1 [0m [0;36mskipped=46 [0m rescued=0 ignored=0


The fix for this error is to not activate the virtualenv after the ansble-bootstrap step. We’ve updated the installation page to include this, and we’re changing ansible-bootstrap to remove the instruction to activate.

1 Like

Can you share the steps to perform the recommended change please.

Regards, Kums

The recommendation is to use exactly the commands on the installation wiki page: https://openedx.atlassian.net/wiki/spaces/OpenOPS/pages/1969455764/Koa+Native+Open+edX+platform+Ubuntu+20.04+64+bit+Installation

Don’t activate a virtual environment, even if the ansible-bootstrap step tells you to.