0

是否有任何选项可用于处理 Terraform 中的 Openstack 提供者凭证,类似于 AWS 提供者中存在的选项,如Environment variables

我的用例:

作为 POC 的一部分,我terraform apply将从我的 python 应用程序中调用命令,我计划在其中将 Openstack 凭据定义为环境变量,并在执行完成后取消设置。这样,我可以避免将凭据存储在文件中以及保管库/领事的复杂性。

请澄清一下,谢谢。

4

2 回答 2

1

有几种方法可以解决这个问题。我建议从 Vault 执行此操作。但如果你真的不想这样做,你可以使用 Terraform 输入变量并在那里使用环境变量。

像这样:terraform apply -var "osuser=${ENV_VAR}"

或者专门针对 Terraform 中的 OpenStack 提供程序,您可以使用此处记录的环境变量:https ://www.terraform.io/docs/providers/openstack/

从文档:

auth_url - (可选;如果未指定 cloud,则为必需)身份验证 URL。如果省略,则使用 OS_AUTH_URL 环境变量。

这些环境变量通常也在 openstack GUI 中提供给您。

于 2018-02-02T12:51:43.397 回答
0

正如我在https://github.com/hashicorp/terraform/issues/13022#issuecomment-819658436中提到的,您还可以提示用户这些事情:

# You can set other TF variables in here as well.
echo "Please enter the outgoing e-mail account's password: "
read -sr TF_VAR_smtp_password_unquoted
export TF_VAR_smtp_password="\"$TF_VAR_smtp_password_unquoted\""
于 2022-03-01T21:50:28.943 回答