Используйте отдельные aws -cli учетные данные и конфигурацию в virtualenv - PullRequest
0 голосов
/ 30 января 2020

С помощью virtualenv возможно ли установить aws -cli по умолчанию на ~/venv/.aws/credentials вместо ~/.aws/credentials.

Я понимаю, что могу использовать --profile на каждом aws команда, но, по-видимому, полезно по умолчанию указывать c "среду тестирования / проекта", чтобы указывать на c учетные данные.

Я искал способы сделать это, но не так много удачи, так как все похоже указывает на посты на бото.

Ответы [ 2 ]

1 голос
/ 30 января 2020

Не уверен, что это соответствует требованиям 100%, но awscli может получить учетные данные из внешнего процесса . Например, вы можете установить конфигурацию по умолчанию AWS credentals для выполнения скрипта следующим образом:

[default]
cat ~/venv/.aws/credentials

И затем убедиться, что ~/venv/.aws/credentials в правильном формате, например:

{
  "Version": 1,
  "AccessKeyId": "an AWS access key",
  "SecretAccessKey": "your AWS secret access key",
  "SessionToken": "the AWS session token for temporary credentials", 
  "Expiration": "ISO8601 timestamp when the credentials expire"
}

Очевидно, что вы можете заставить скрипт делать что-то более сложное, чем cat, возможно, для поиска в иерархии папок.

Опция AWS_PROFILE=xyz, конечно, проще, конечно.

1 голос
/ 30 января 2020

Невозможно иметь отдельные AWS файлы учетных данных для виртуальной среды. Что вы можете сделать, так это установить профиль AWS в качестве переменной среды.

export AWS_PROFILE=staging

надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...