Драйвер BigchainDB для Python в AWS Lambda
Я пытаюсь подключиться к тестовой сети BigchainDB ( https://test.bigchaindb.com/) с помощью лямбда-функции в AWS. Я в Python 3.6 и использую драйвер bigchaindb (с pip3 install bigchaindb_driver
а также pip3 install cryptography
).
У меня есть некоторый пример кода, написанный и успешно протестированный на моей локальной машине (macOS с Python 3.6.5 в подходящем virtualenv), который подключается к тестовой сети и работает как положено.
Затем я попытался заархивировать его, чтобы включить драйвер bigchaindb с криптографией и их различными зависимостями, и после загрузки в AWS, настройки и т. Д. И т. Д. При вызове функции lambda я получаю эту ошибку:
Unable to import module 'lambda_func_shift': No module named '_pysha3'
Документация BigchainDB кажется мне очень запутанной, основанной на разных версиях в разных местах, что не помогает. Я заставил pip установить последние версии:
BigchainDB==2.0.0a1
bigchaindb-driver==0.5.0a1
что по крайней мере заставляет его работать на моей локальной машине.
Я нашел ссылку на ту же проблему с клиентом Ethereum на лямбде, но предлагаемое решение - установить на Ubuntu 17.04 перед архивированием, и это проблематично с 17.04, теперь уже в конце срока службы, и поэтому не поддерживается необходимыми репозиториями.
Очевидно, проблема заключается в несколько странной проблеме с тем, как Python построен в лямбда-среде AWS (БЕЗ --with-fpectl), которая вызывает проблемы.
Вместо этого я попытался использовать клиент node.js, но у меня возникло еще больше проблем с документацией, настолько плохой, что я даже не могу заставить ее работать локально. (Я получаю 426 Обновление требуется ошибка при подключении к тестовой сети.)
Может кто-нибудь предложить предложения о том, как заставить драйвер Python BigchainDB работать в лямбде? Или, альтернативно, предложите мне рабочий пример подключения драйвера node.js к тестовой сети?