Не удается установить pipenv confluent-kafka 1.4.0 из исходного кода (pypi) - похоже, не существует обходного пути - PullRequest
0 голосов
/ 16 апреля 2020

Кажется, есть проблема , зарегистрированная с текущим пакетом Confluent-Kafka на pypi:

У меня есть Dockerfile с кодом foll, который Раньше работал до тех пор, пока проблема не возникла:

RUN cd /tmp && git clone https://github.com/edenhill/librdkafka.git \
&& cd librdkafka \
&& ./configure --prefix /usr \
&& make \
&& make install \
&& cd .. \
&& rm -rf librdkafka

RUN apk --update add \
......
pip3 install -U setuptools &&\
pip3 install --upgrade pip \
avro-python3\
confluent-kafka[avro]\
confluent-kafka\

ERROR after the issue: Command errored out with exit status 1:
 command: /usr/bin/python3.6 -c 'import sys, setuptools, tokenize; sys.argv[0] = 
 '"'"'/tmp/pip-req-build-14u6lptl/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-
 14u6lptl/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-req-build-14u6lptl/pip-egg-info
     cwd: /tmp/pip-req-build-14u6lptl/
 Complete output (5 lines):
 Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-req-build-14u6lptl/setup.py", line 12, in <module>
    with open(os.path.join(mod_dir, 'requirements.txt')) as f:
 FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-req-build- 
 14u6lptl/confluent_kafka/requirements.txt'

на странице github для этой проблемы, были сделаны некоторые предложения для обхода этой проблемы, которые я пробовал вот так:

1) обходной путь который не работал :

ENV LIBRDKAFKA_VERSION v1.4.0 \
RUN cd /tmp && git clone https://github.com/edenhill/librdkafka.git \
  && cd librdkafka \
  && git checkout $LIBRDKAFKA_VERSION \
  && ./configure --install-deps --prefix /usr \
  && make \
  && make install 

RUN apk --update add \
......
pip3 install -U setuptools &&\
pip3 install --upgrade pip \
avro-python3\
confluent-kafka[avro]\
confluent-kafka\
....

2) обходной путь который не работал :

ENV LIBRDKAFKA_VERSION v1.4.0 \
RUN cd /tmp && git clone https://github.com/edenhill/librdkafka.git \
  && cd librdkafka \
  && git checkout $LIBRDKAFKA_VERSION \
  && ./configure --install-deps --prefix /usr \
  && make \
  && make install

RUN apk --update add \
.....
pip3 install -U setuptools &&\
pip3 install --upgrade pip \
avro-python3\
confluent-kafka[avro]\
--no-binary :all: -i https://test.pypi.org/simple/ confluent-kafka==v1.4.0.1 \
....

ERROR: 
Service 'xxxx' failed to build: The command '/bin/sh -c apk --update add 
avro-python3    
confluent-kafka[avro]    
--no-binary :all: -i https://test.pypi.org/simple/ confluent-kafka==v1.4.0.1 
returned a non-zero code: 1

Мне интересно, есть ли это обходной путь, который я не пробовал, чтобы кто-то мог посоветовать мне работать, пока они не исправят эту проблему ..

1 Ответ

1 голос
/ 16 апреля 2020

Просто прикрепите к старой версии, пока они не сделают новую версию:

pip3 install --upgrade pip \
avro-python3\
confluent-kafka[avro]==1.3.0\

Также обратите внимание, что установка как основного пакета (confluent-kafka), так и пакета с дополнительным (confluent-kafka[avro]) ненужно, вам просто нужно установить пакет с доп. Вы устанавливаете его дважды.

...