Как создать развертываемый zip-архив Python Lambda с помощью PoetryPython

Программы на Python
Ответить
Anonymous
 Как создать развертываемый zip-архив Python Lambda с помощью Poetry

Сообщение Anonymous »

Я потратил несколько дней, пытаясь выяснить, как лучше всего создать пакет Python Lambda с использованием Poetry. Я нашел несколько блогов, в которых описывалась та же техника, но они не сработали в моей ситуации. Решение, представленное в блогах, — использовать pip install для установки необходимых зависимостей в определенный каталог и заархивировать его.

Код: Выделить всё

poetry run pip install -t dist/lambda .
cd dist/lambda
zip -r ../lambda.zip .
Однако это не работает, если вы используете зависимости пути с Poetry. Вы получаете сообщение об ошибке от pip, указывающее pip._vendor.pkg_resources.RequirementParseError: Invalid URL: для любой локальной зависимости.
Я столкнулся с плагином Poetry Bundle, и он выглядел многообещающе . Его использование помогло установить необходимые зависимости и сам проект в выбранный целевой каталог.

Код: Выделить всё

poetry self add poetry-plugin-bundle
poetry bundle venv .venv-lambda
cd .venv-lambda/lib/python*/site-packages/
zip -r ../../../../dist/lambda.zip .
Проблема этого подхода заключается в том, что он устанавливает не только основные зависимости, но также зависимости разработки и тестирования. Нет возможности указать, какую группу зависимостей включить или исключить. Существует открытая проблема с PR, которая ожидает объединения для ее решения. Как только проблема будет решена, это, вероятно, станет идеальным решением.
А пока мне нужно что-то другое/лучше.

Подробнее здесь: https://stackoverflow.com/questions/742 ... ing-poetry
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»