Не могу установить Tensorflow 2.2.0rc0 в Ubuntu с помощью действий Github внутри setup.py - PullRequest
3 голосов
/ 17 марта 2020

Когда я пытаюсь установить tensorflow>=2.2.0rc0 из setup.py, работающего python setup.py install из рабочего процесса Github Actions, вывод sendme следующий:

Searching for tensorflow>=2.2.0rc0
Reading https://pypi.org/simple/tensorflow/
No local packages or working download links found for tensorflow>=2.2.0rc0
error: Could not find suitable distribution for Requirement.parse('tensorflow>=2.2.0rc0')
##[error]Process completed with exit code 1.

Это мой рабочий процесс Github Action:

name: Test Deblurrer

on: 
  push:
    branches:
    - master
    - development 
  pull_request:
    branches:
    - master
    - development

jobs:
  build:

    runs-on: ubuntu-latest
    strategy:
      max-parallel: 4
      matrix:
        python-version: [3.7]

    steps:
    - uses: actions/checkout@v1
    - name: Setup Python ${{ matrix.python-version }}
      uses: actions/setup-python@v1
      with:
        python-version: ${{ matrix.python-version }}

    - name: Install dependencies
      run: |
        sudo apt-get install libpq-dev python-dev
        python -m pip install --upgrade pip
        python setup.py install
        pip install pytest

    - name: Test with pytest
      run: |
        PYTHONPATH=${PYTHONPATH}:/home/runner/work/deep-deblurring/deep-deblurring/backend:$(pwd)
        pytest

Следующим является мой файл setup.py:

#!/usr/bin/python
# coding=utf-8

"""Setup and install the package and all the dependencies."""

from setuptools import setup, find_packages

with open('requirements.txt') as pro:
    INSTALL_REQUIRES = pro.read().split('\n')

setup(
    author='Whitman Bohorquez, Mo Rebaie',
    author_email='whitman-2@hotmail.com',
    name='deblurrer',
    license='MIT',
    description='Image Deblurring using Deep Learning Architecture',
    version='1.0.0',
    url='',
    packages=find_packages(),
    include_package_data=True,
    python_requires='>=3.6',
    install_requires=INSTALL_REQUIRES,
    classifiers=[
        'Development Status :: Alpha',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3.6',
        'Intended Audience :: Developers',
    ],
)

и, наконец, мои требования.txt:

grpcio == 1.27.2
kaggle
numpy
tensorflow >= 2.2.0rc0
pandas

Я не понимаю, почему это происходит на Github Actions, но при локальной установке на Windows 10 он работает как положено.

Заранее спасибо!

PD: Когда я выполняю c pip install tensorflow==2.2.0rc0 непосредственно в рабочем процессе действий Github, а не внутри python setup.py install это тоже работает. Так что это не работает только на setup.py, и только на Ubuntu

1 Ответ

3 голосов
/ 18 марта 2020

Проблема связана с устаревшей setuptools версией. Начиная с 2.0, tensorflow поставляет только колеса с тегом manylinux2010 на Linux. setuptools добавил поддержку manylinux2010 в 42.0.0 , поэтому обновление setuptools решит проблему:

$ pip install setuptools>=42.0.0
...