-
Notifications
You must be signed in to change notification settings - Fork 696
Closed
Description
Hello! When running rules_docker using Python 3, I get the following error:
ERROR: Analysis of target '//samwell:samwell_img' failed; build aborted: no such package '@go_image_base//image': Pull command failed: Traceback (most recent call last):
File "/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/private/var/tmp/_bazel_fedenusy/82761fbb391b03a602abc1324ff91dda/external/puller/file/downloaded/__main__.py", line 30, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 668, in _load_unlocked
File "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/private/var/tmp/_bazel_fedenusy/82761fbb391b03a602abc1324ff91dda/external/puller/file/downloaded/containerregistry/client/__init__.py", line 23, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 668, in _load_unlocked
File "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/private/var/tmp/_bazel_fedenusy/82761fbb391b03a602abc1324ff91dda/external/puller/file/downloaded/containerregistry/client/docker_creds_.py", line 31, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 963, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 906, in _find_spec
File "<frozen importlib._bootstrap_external>", line 1280, in find_spec
File "<frozen importlib._bootstrap_external>", line 1254, in _get_spec
File "<frozen importlib._bootstrap_external>", line 1235, in _legacy_get_spec
File "<frozen importlib._bootstrap>", line 441, in spec_from_loader
File "<frozen importlib._bootstrap_external>", line 594, in spec_from_file_location
File "/private/var/tmp/_bazel_fedenusy/82761fbb391b03a602abc1324ff91dda/external/puller/file/downloaded/httplib2/__init__.py", line 988
raise socket.error, msg
^
SyntaxError: invalid syntax
From seeing this, I'm assuming rules_docker was written for Python 2.
The workaround I found is to:
- Set my machine's default
pythontopython2 - Set
--incompatible_use_python_toolchains - Set
--incompatible_py3_is_default=false
I think it should be simple to make rules_docker compatible with Python toolchains. We would just need to declare python_version = "PY2" somewhere within rules_docker... thoughts?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels