Skip to content
This repository has been archived by the owner on Mar 3, 2023. It is now read-only.

Not able to build Heron in Centos 7 image due to Python version #3674

Closed
nicknezis opened this issue Feb 16, 2021 · 2 comments · Fixed by #3675
Closed

Not able to build Heron in Centos 7 image due to Python version #3674

nicknezis opened this issue Feb 16, 2021 · 2 comments · Fixed by #3675
Assignees
Labels

Comments

@nicknezis
Copy link
Contributor

Describe the bug
When building in Centos 7 Docker image, the build fails due to uvloop Python library depending on Python 3.7 which is newer than the Centos 7 provided Python 3.6.8.

To Reproduce
Steps to reproduce the behavior:
When building using ./docker/scripts/build-artifacts.sh centos7 0.20 /tmp/ the build fails with the following output message.

ERROR: /heron/heron/tools/ui/src/python/BUILD:24:11: PexPython heron/tools/ui/src/python/heron-ui.pex failed (Exit 1): pex_wrapper.pex failed: error executing command 
  (cd /root/.cache/bazel/_bazel_root/f4ab758bd53020512013f7dfa13b6902/execroot/org_apache_heron && \
  exec env - \
    PATH=/bin:/usr/bin:/usr/local/bin \
    PEX_ROOT=.pex \
    PEX_VERBOSE=0 \
  bazel-out/host/bin/tools/rules/pex/pex_wrapper.pex --not-zip-safe --pex-root .pex --entry-point heron.tools.ui.src.python.main --output-file bazel-out/k8-fastbuild/bin/heron/tools/ui/src/python/heron-ui.pex --disable-cache --python-shebang '#!/usr/bin/env python3' --no-compile bazel-out/k8-fastbuild/bin/heron/tools/ui/src/python/heron-ui.pex_manifest)
Execution platform: @local_config_platform//:host
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3.6 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-download-315rix09/uvloop/setup.py'"'"'; __file__='"'"'/tmp/pip-download-315rix09/uvloop/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' --no-user-cfg egg_info --egg-base /tmp/pip-download-315rix09/uvloop/pip-egg-info
         cwd: /tmp/pip-download-315rix09/uvloop/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-download-315rix09/uvloop/setup.py", line 5, in <module>
        raise RuntimeError('uvloop requires Python 3.7 or greater')
    RuntimeError: uvloop requires Python 3.7 or greater
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
pid: 11744 -> /usr/bin/python3.6 /root/.cache/bazel/_bazel_root/f4ab758bd53020512013f7dfa13b6902/execroot/org_apache_heron/.pex/pip.pex/49a647f5ed9e81dc8f85560600c53fbb4dfc60f0 --disable-pip-version-check --isolated --no-python-version-warning -q --no-cache-dir download --dest /tmp/tmpz84g06vr/resolved_dists/cp36-cp36m protobuf==3.8.0 setuptools==46.1.3 colorlog==2.6.1 PyYAML==3.13 requests==2.12.3 click==7.1.2 fastapi==0.60.1 jinja2==2.11.2 aiofiles==0.5.0 uvicorn==0.11.7 raised Executing /usr/bin/python3.6 /root/.cache/bazel/_bazel_root/f4ab758bd53020512013f7dfa13b6902/execroot/org_apache_heron/.pex/pip.pex/49a647f5ed9e81dc8f85560600c53fbb4dfc60f0 --disable-pip-version-check --isolated --no-python-version-warning -q --no-cache-dir download --dest /tmp/tmpz84g06vr/resolved_dists/cp36-cp36m protobuf==3.8.0 setuptools==46.1.3 colorlog==2.6.1 PyYAML==3.13 requests==2.12.3 click==7.1.2 fastapi==0.60.1 jinja2==2.11.2 aiofiles==0.5.0 uvicorn==0.11.7 failed with 1
INFO: Elapsed time: 365.446s, Critical Path: 80.42s
INFO: 1030 processes: 211 internal, 819 local.
FAILED: Build did NOT complete successfully

Expected behavior
The build should produce artifacts without error. Also the bazel_configure.py version check file should properly match the dependency if we actually need Python 3.7 going forward.

Operating System

  • OS: Centos 7
  • Version master branch

Additional context
N/A

@nicknezis
Copy link
Contributor Author

This uvicorn update addresses the breaking change described here: encode/uvicorn#952

@thinker0
Copy link
Member

Thanks.
Now the CeontOS7 build is successful.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants