Кто-нибудь придумал достойный способ сделать это?
Короче, у вас есть provider "aws"
, настроенный через env vars или профиль, с sts
или без него, это не имеет значения,Возможно, у вас их несколько.
Теперь вы хотите вызвать aws
cli, потому что что-то не очень хорошо реализовано в провайдере aws.В моем случае мне нужно сгенерировать и загрузить некоторую конфиденциальную информацию непосредственно в корзину S3, которую я не хочу в файле состояния.В любом случае это было s3 sync
, поэтому действие идемпотентно.
Однако, похоже, нет способа передать учетные данные поставщика - постоянные, env var, profile во временные sts - в null_resource
пункт:
provider "aws" {
# set using explicit setting or profile or however
alias = "myaws"
}
resource "null_resource" "cli" {
provisioner "local-exec" {
command = "aws <do something>"
environment {
# happy to pass AWS_PROFILE or AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY here...
# if there were a way to retrieve it from the "myaws" provider
}
}
}