У меня есть локальная ферма устройств, на которой работает Python 2.7.13 через Appium 1.6.5 на некоторых эмуляторах Android. Мы хотим увеличить нашу экспозицию и использовать ферму устройств AWS. Проблема в том, что AWS поддерживает только Python 2.7.6 и не планирует обновляться.
Нам нужен как минимум Python 2.7.9+, потому что любой Python ниже, который не поддерживает SSL с пакетом «request».
Мы попробовали «запрос [безопасность] == 2.9.1», но он вводит зависимость в пакетах колес, которую AWS не поддерживает.
С python 2.7.6 в Windows и AWS мы получаем следующие ошибки при загрузке пакетов с помощью pip...
... Сбор криптографии>=2.2.1 (из pyOpenSSL>=0.13->requests[security]==2.9.1->-r /tmp/scratchzAHCQI.scratch/test-packagep3mb8i/requirements.txt (строка 5)) /tmp/scratchzAHCQI.scratch/tmpZjjNAE/local/lib/python2.7/site-packages/pip/vendor/requests/packages/urllib3/util/ssl.py:90: InsecurePlatformWarning: верно Объект SSLContext недоступен. Это не позволяет urllib3 правильно настроить SSL и может привести к сбою определенных SSL-соединений. Для получения дополнительной информации см. https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning Загрузка https://files.pythonhosted.org/packages/22/21/233e38f74188db94e8451ef6385754a98f3cad9b59bedf3a8e8b14988be4/cryptography-2.3.1.tar.gz (449 КБ) Полный вывод команды python setup.py egg_info: трассировка (последний вызов): файл "", строка 20 , в файле "/tmp/pip-build-nqoNP_/cryptography/setup.py", строка 28, в "для криптографии требуются setuptools 18.5 или новее, обновите до " RuntimeError: для криптографии требуются setuptools 18.5 или новее, обновите до более новая версия setuptools
---------------------------------------- Command "python setup.py egg_info" failed with error code 1 in
/tmp/pip-build-nqoNP_/cryptography /tmp/scratchzAHCQI.scratch/tmpZjjNAE/local/lib/python2.7/site-packages/pip/vendor/requests/packages/urllib3/util/ssl.py:90: InsecurePlatformWarning: настоящий объект SSLContext недоступен. Это не позволяет urllib3 правильно настроить SSL и может привести к сбою определенных SSL-соединений. Для получения дополнительной информации см. https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning /tmp/scratchzAHCQI.scratch/tmpZjjNAE/local/lib/python2.7/site-packages/pip/vendor/requests/packages/urllib3/util/ssl.py:90: InsecurePlatformWarning: A объект true SSLContext недоступен. Это не позволяет urllib3 правильно настроить SSL и может привести к сбою определенных SSL-соединений. Для получения дополнительной информации см. https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning Вы используете pip версии 7.1.2, однако доступна версия 18.0. Вам следует рассмотреть возможность обновления с помощью команды «pip install --upgrade pip».
Инженер службы поддержки AWS упомянул, что мы можем настроить собственную среду для поддержки новой версии Python. Однако документация очень сбивает с толку, поскольку в ней не указано, как должен называться файл «Техническая спецификация» (я полагаю, buildspec.yml), куда я должен его поместить, должны ли мы по-прежнему использовать колесо или просто пункт?
Могу ли я использовать apt или мне следует использовать yum?
Я просмотрел Интернет, но не могу найти ничего, связанного с python и техническими характеристиками AWS. Все, что я хочу сделать, это установить Python 2.7.9, установить требования и запустить тесты, а также иметь возможность отправлять сообщения в службы https REST.
Кому-нибудь приходилось решать эту проблему раньше?