KOA installation error

Hi I am trying to install KOA.master on a linux ubuntu 20.04.

The instructions I am using are here
Afetr running openedx_native.yml playbook in the configuration/playbooks directory

sudo -E ansible-playbook -c local ./openedx_native.yml -i “localhost,” -e EDX_PLATFORM_VERSION=open-release/koa.master -e CERTS_VERSION=open-release/koa.master -e FORUM_VERSION=open-release/koa.master -e XQUEUE_VERSION=open-release/koa.master -e CONFIGURATION_VERSION=open-release/koa.master -e DEMO_VERSION=open-release/koa.master -e INSIGHTS_VERSION=open-release/koa.master -e ANALYTICS_API_VERSION=open-release/koa.master -e ECOMMERCE_VERSION=open-release/koa.master -e ECOMMERCE_WORKER_VERSION=open-release/koa.master -e DISCOVERY_VERSION=open-release/koa.master -e THEMES_VERSION=open-release/koa.master -e ACCOUNT_MFE_VERSION=open-release/koa.master -e GRADEBOOK_MFE_VERSION=open-release/koa.master -e PROFILE_MFE_VERSION=open-release/koa.master -e RETIREMENT_SERVICE_VERSION=open-release/koa.master -e@~/my-passwords.yml

my error log
TASK [edx_service : Tag instance] *******************************************************************************************************************************************************************
skipping: [localhost] => (item=[{‘PROTOCOL’: ‘https’, ‘DOMAIN’: ‘github.com’, ‘PATH’: ‘edx’, ‘REPO’: ‘ecommerce.git’, ‘VERSION’: ‘open-release/koa.master’, ‘DESTINATION’: ‘/edx/app/ecommerce/ecommerce’, ‘SSH_KEY’: None}, {‘changed’: True, ‘before’: None, ‘after’: ‘c459c4c976d77778790577eb518242fccee802ee’, ‘invocation’: {‘module_args’: {‘repo’: ‘GitHub - edx/ecommerce: Service for managing edX's product catalog and handling orders for those products’, ‘dest’: ‘/edx/app/ecommerce/ecommerce’, ‘version’: ‘open-release/koa.master’, ‘depth’: 1, ‘remote’: ‘origin’, ‘force’: False, ‘clone’: True, ‘update’: True, ‘verify_commit’: False, ‘accept_hostkey’: False, ‘bare’: False, ‘recursive’: True, ‘track_submodules’: False, ‘refspec’: None, ‘reference’: None, ‘key_file’: None, ‘ssh_opts’: None, ‘executable’: None, ‘umask’: None, ‘archive’: None, ‘separate_git_dir’: None}}, ‘failed’: False, ‘item’: {‘PROTOCOL’: ‘https’, ‘DOMAIN’: ‘github.com’, ‘PATH’: ‘edx’, ‘REPO’: ‘ecommerce.git’, ‘VERSION’: ‘open-release/koa.master’, ‘DESTINATION’: ‘/edx/app/ecommerce/ecommerce’, ‘SSH_KEY’: None}, ‘ansible_loop_var’: ‘item’}])

TASK [edx_django_service : Get service user numeric id for docker] **********************************************************************************************************************************
skipping: [localhost]

TASK [edx_django_service : Docker build non-newrelic] ***********************************************************************************************************************************************
skipping: [localhost]

TASK [edx_django_service : Docker build newrelic] ***************************************************************************************************************************************************
skipping: [localhost]

TASK [edx_django_service : add gunicorn configuration file] *****************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : add deadsnakes repo] *****************************************************************************************************************************************************
ok: [localhost]

TASK [edx_django_service : install python3.8] *******************************************************************************************************************************************************
ok: [localhost]

TASK [edx_django_service : install python3] *********************************************************************************************************************************************************
[DEPRECATION WARNING]: Invoking “apt” only once while using a loop via squash_actions is deprecated. Instead of using a loop to supply multiple items and specifying name: "{{ item }}", please
use name: ['python3-pip', 'python3-dev'] and remove the loop. This feature will be removed in version 2.11. Deprecation warnings can be disabled by setting deprecation_warnings=False in
ansible.cfg.
ok: [localhost] => (item=[‘python3-pip’, ‘python3-dev’])

TASK [edx_django_service : build virtualenv with python3.8] *****************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : build virtualenv with python3] *******************************************************************************************************************************************
skipping: [localhost]

TASK [edx_django_service : build virtualenv with python2.7] *****************************************************************************************************************************************
skipping: [localhost]

TASK [edx_django_service : Pin pip to a specific version.] ******************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : install nodenv] **********************************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : create nodeenv] **********************************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : upgrade npm] *************************************************************************************************************************************************************
changed: [localhost]

TASK [edx_django_service : install production requirements] *****************************************************************************************************************************************
fatal: [localhost]: FAILED! => {“changed”: true, “cmd”: [“make”, “production-requirements”], “delta”: “0:00:37.815063”, “end”: “2021-11-24 07:26:46.982811”, “msg”: “non-zero return code”, “rc”: 2, “start”: “2021-11-24 07:26:09.167748”, “stderr”: “bower backbone-validation#~0.11.5 mismatch Version declared in the json (0.11.3) is different than the resolved one (0.11.5)\nbower datatables#1.10.10 invalid-meta for:/tmp/ecommerce/bower/06669348abd69fdff10f03f7c7ff1571-162180-XImLyX/bower.json\nbower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files\nbower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files\nbower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files\nbower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files\nbower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files\nbower datatables#1.10.10 invalid-meta The “main” field has to contain only 1 file per filetype; found multiple .png files: [“media/images/sort_asc.png”,“media/images/sort_asc_disabled.png”,“media/images/sort_both.png”,“media/images/sort_desc.png”,“media/images/sort_desc_disabled.png”]\nbower bootstrapaccessibilityplugin#~1.0.4 mismatch Version declared in the json (1.0.6) is different than the resolved one (1.0.7)\nbower backbone-super#~1.0.4 mismatch Version declared in the json (1.0.2) is different than the resolved one (1.0.4)\nbower svg4everybody#~1.0.0 invalid-meta for:/tmp/ecommerce/bower/fd830639b380c47ac7605691a84ed11a-162180-JcO3Pd/bower.json\nbower svg4everybody#~1.0.0 invalid-meta The “main” field cannot contain minified files\nbower svg4everybody#~1.0.0 invalid-meta The “main” field cannot contain minified files\nbower svg4everybody#~1.0.0 invalid-meta The “main” field has to contain only 1 file per filetype; found multiple .js files: [“svg4everybody.min.js”,“svg4everybody.ie8.min.js”]\nbower requirejs-plugins#~1.0.3 invalid-meta for:/tmp/ecommerce/bower/ad74b92b76f0adeb7f6f6fe62454cb7c-162180-ApFfAD/bower.json\nbower requirejs-plugins#~1.0.3 invalid-meta The “main” field has to contain only 1 file per filetype; found multiple .js files: [“src/async.js”,“src/depend.js”,“src/font.js”,“src/goog.js”,“src/image.js”,“src/json.js”,“src/mdown.js”,“src/noext.js”,“src/propertyParser.js”,“lib/Markdown.Converter.js”,“lib/text.js”]\nbower fontawesome#~4.3.0 invalid-meta for:/tmp/ecommerce/bower/4121662a0e17705c5dce874c683e353b-162180-VdemWs/bower.json\nbower fontawesome#~4.3.0 invalid-meta The “main” field cannot contain globs (example: “*.js”)\n ERROR: Command errored out with exit status 1:\n command: /edx/app/ecommerce/venvs/ecommerce/bin/python3.8 -c 'import sys, setuptools, tokenize; sys.argv[0] = '”’"’/tmp/pip-install-1608kee9/django-solo/setup.py’"’"’; file=’"’"’/tmp/pip-install-1608kee9/django-solo/setup.py’"’"’;f=getattr(tokenize, ‘"’"‘open’"’"’, open)(file);code=f.read().replace(’"’"’\r\n’"’"’, ‘"’"’\n’"’"’);f.close();exec(compile(code, file, ‘"’"‘exec’"’"’))’ egg_info --egg-base /tmp/pip-install-1608kee9/django-solo/pip-egg-info\n cwd: /tmp/pip-install-1608kee9/django-solo/\n Complete output (26 lines):\n running egg_info\n creating /tmp/pip-install-1608kee9/django-solo/pip-egg-info/django_solo.egg-info\n writing /tmp/pip-install-1608kee9/django-solo/pip-egg-info/django_solo.egg-info/PKG-INFO\n Traceback (most recent call last):\n File “”, line 1, in \n File “/tmp/pip-install-1608kee9/django-solo/setup.py”, line 6, in \n setup(\n File “/edx/app/ecommerce/venvs/ecommerce/lib/python3.8/site-packages/setuptools/init.py”, line 153, in setup\n return distutils.core.setup(**attrs)\n File “/usr/lib/python3.8/distutils/core.py”, line 148, in setup\n dist.run_commands()\n File “/usr/lib/python3.8/distutils/dist.py”, line 966, in run_commands\n self.run_command(cmd)\n File “/usr/lib/python3.8/distutils/dist.py”, line 985, in run_command\n cmd_obj.run()\n File “/edx/app/ecommerce/venvs/ecommerce/lib/python3.8/site-packages/setuptools/command/egg_info.py”, line 292, in run\n writer(self, ep.name, os.path.join(self.egg_info, ep.name))\n File “/edx/app/ecommerce/venvs/ecommerce/lib/python3.8/site-packages/setuptools/command/egg_info.py”, line 656, in write_pkg_info\n metadata.write_pkg_info(cmd.egg_info)\n File “/usr/lib/python3.8/distutils/dist.py”, line 1117, in write_pkg_info\n self.write_pkg_file(pkg_info)\n File “/edx/app/ecommerce/venvs/ecommerce/lib/python3.8/site-packages/setuptools/dist.py”, line 167, in write_pkg_file\n write_field(‘Summary’, single_line(self.get_description()))\n File “/edx/app/ecommerce/venvs/ecommerce/lib/python3.8/site-packages/setuptools/dist.py”, line 151, in single_line\n raise ValueError(‘Newlines are not allowed’)\n ValueError: Newlines are not allowed\n ----------------------------------------\nERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.\nWARNING: You are using pip version 20.0.2; however, version 21.3.1 is available.\nYou should consider upgrading via the ‘/edx/app/ecommerce/venvs/ecommerce/bin/python3.8 -m pip install --upgrade pip’ command.\nmake: *** [Makefile:50: production-requirements] Error 1", “stderr_lines”: [“bower backbone-validation#~0.11.5 mismatch Version declared in the json (0.11.3) is different than the resolved one (0.11.5)”, “bower datatables#1.10.10 invalid-meta for:/tmp/ecommerce/bower/06669348abd69fdff10f03f7c7ff1571-162180-XImLyX/bower.json”, “bower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files”, “bower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files”, “bower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files”, “bower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files”, “bower datatables#1.10.10 invalid-meta The “main” field cannot contain font, image, audio, or video files”, “bower datatables#1.10.10 invalid-meta The “main” field has to contain only 1 file per filetype; found multiple .png files: [“media/images/sort_asc.png”,“media/images/sort_asc_disabled.png”,“media/images/sort_both.png”,“media/images/sort_desc.png”,“media/images/sort_desc_disabled.png”]”, “bower bootstrapaccessibilityplugin#~1.0.4 mismatch Version declared in the json (1.0.6) is different than the resolved one (1.0.7)”, “bower backbone-super#~1.0.4 mismatch Version declared in the json (1.0.2) is different than the resolved one (1.0.4)”, “bower svg4everybody#~1.0.0 invalid-meta for:/tmp/ecommerce/bower/fd830639b380c47ac7605691a84ed11a-162180-JcO3Pd/bower.json”, “bower svg4everybody#~1.0.0 Downloading coreschema-0.0.4.tar.gz (10 kB)”, “Collecting coverage==5.3”, " Downloading coverage-5.3-cp38-cp38-manylinux1_x86_64.whl (230 kB)", “Collecting crypto==1.4.1”, " Downloading crypto-1.4.1-py2.py3-none-any.whl (18 kB)", “Collecting cryptography==3.2.1”, " Downloading cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl (2.6 MB)", “Collecting cssselect==1.1.0”, " Downloading cssselect-1.1.0-py2.py3-none-any.whl (16 kB)", “Collecting cssutils==1.0.2”, " Downloading cssutils-1.0.2-py3-none-any.whl (406 kB)", “Collecting cybersource-rest-client-python==0.0.21”, " Downloading cybersource-rest-client-python-0.0.21.tar.gz (814 kB)", “Collecting datetime==4.3”, " Downloading DateTime-4.3-py2.py3-none-any.whl (60 kB)", “Collecting defusedxml==0.6.0”, " Downloading defusedxml-0.6.0-py2.py3-none-any.whl (23 kB)", “Collecting django-appconf==1.0.4”, " Downloading django_appconf-1.0.4-py2.py3-none-any.whl (6.3 kB)", “Collecting django-compressor==2.4”, " Downloading django_compressor-2.4-py2.py3-none-any.whl (126 kB)", “Collecting django-config-models==2.0.3”, " Downloading django_config_models-2.0.3-py2.py3-none-any.whl (29 kB)", “Collecting django-cors-headers==3.5.0”, " Downloading django_cors_headers-3.5.0-py3-none-any.whl (11 kB)", “Collecting django-crispy-forms==1.8.1”, " Downloading django_crispy_forms-1.8.1-py2.py3-none-any.whl (108 kB)", “Collecting django-crum==0.7.8”, " Downloading django_crum-0.7.8-py2.py3-none-any.whl (4.7 kB)", “Collecting django-extensions==3.0.9”, " Downloading django_extensions-3.0.9-py3-none-any.whl (221 kB)", “Collecting django-extra-views==0.11.0”, " Downloading django-extra-views-0.11.0.tar.gz (13 kB)", “Collecting django-filter==2.4.0”, " Downloading django_filter-2.4.0-py3-none-any.whl (73 kB)", “Collecting django-haystack==2.8.1”, " Downloading django-haystack-2.8.1.tar.gz (1.6 MB)", “Collecting django-libsass==0.8”, " Downloading django_libsass-0.8-py3-none-any.whl (6.2 kB)", “Collecting django-model-utils==4.0.0”, " Downloading django_model_utils-4.0.0-py2.py3-none-any.whl (29 kB)", “Collecting django-oscar==2.0.4”, " Downloading django_oscar-2.0.4-py3-none-any.whl (7.4 MB)", “Collecting django-phonenumber-field==2.0.1”, " Downloading django-phonenumber-field-2.0.1.tar.gz (16 kB)", “Collecting django-rest-swagger==2.2.0”, " Downloading django_rest_swagger-2.2.0-py2.py3-none-any.whl (495 kB)", “Collecting django-ses==1.0.3”, " Downloading django_ses-1.0.3-py2.py3-none-any.whl (24 kB)", “Collecting django-simple-history==2.12.0”, " Downloading django_simple_history-2.12.0-py2.py3-none-any.whl (46 kB)", “Collecting django-solo==1.1.3”, " Downloading django-solo-1.1.3.tar.gz (8.9 kB)"]}

RUNNING HANDLER [redis : reload redis] **************************************************************************************************************************************************************

PLAY RECAP ******************************************************************************************************************************************************************************************
localhost : ok=310 changed=181 unreachable=0 failed=1 skipped=663 rescued=0 ignored=3