Рейтинг:1

Есть ли безопасный способ обновить систему boto3 в целом?

флаг br

(У меня Ubuntu 20.04.3 LTS)

я ежедневно пользуюсь авскли, который я установил с помощью apt, и он отлично работает. Однако версия о бото3 поставляемая с ним версия очень старая (1.9.253) по сравнению с самой последней версией (1.20.3). Обычно это не было бы проблемой, но, похоже, в этой версии boto3 есть ошибка, которая не позволяет мне писать какие-либо сценарии, которые должны использовать интерфейс SSO AWS:

импорт бото3                                                                                      
boto3.setup_default_session()                                                                     
клиент = boto3.client('менеджер секретов')                                                           
client.list_secrets() # NoCredentialsError

Запуск того же кода в virtualenv с современной версией boto3 дает ожидаемый результат, поэтому я полагаю, что здесь виноват широкий разрыв между версиями.

я знаю, что я мог просто беги pip установить --обновить boto3 как root, но это, вероятно, приведет к поломке всех вещей, поэтому я ищу более чистую/безопасную альтернативу. Существует ли один? На данный момент я рассматриваю возможность запускать небольшие виртуальные среды везде и писать псевдонимы-оболочки, чтобы использовать этот экземпляр python для запуска моих скриптов, но это тоже кажется неприятным.

Daniel Quinn avatar
флаг br
Это стандартная виртуальная среда, созданная с помощью `python3 -m venv my_virtualenv`. Единственное, что * отличается *, это версия boto3, которая устанавливается в него, когда я запускаю `pip install boto3`.
Daniel Quinn avatar
флаг br
Я уже использую Python 3.8.10, так как он поставляется с Ubuntu.
Daniel Quinn avatar
флаг br
Как правило, запускать `pip` против установленного в системе Python – плохая идея. Я, очевидно, могу обновить boto3 в virtualenv, но я не хочу менять версию системно установленного boto3 напрямую, так как это может иметь непреднамеренные (и трудно исправить) последствия.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.