繁体   English   中英

在没有保管库的情况下处理 Terraform 中的 Openstack 提供商凭证

[英]Handling Openstack provider credentials in Terraform without vault

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

我的用例:

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

请说明,谢谢。

有几种解决方法。 我建议从保险柜中进行此操作。 但是,如果您真的不想这样做,则可以使用Terraform输入变量并在其中使用环境变量。

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

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

从文档:

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

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

您还可以提示用户这些事情,正如我在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\""

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM