如何解决从父目录继承terraform .tf文件
terraform == 0.12.28
目标是从上游目录继承terraform .tf文件。我一直在关注此repo,该事实表明仅通过说明.tf文件中的相对上游文件路径便可以实现此目的。虽然当我跑步
-
terraform init
仅在cwd内 -
terraform init
,然后进入父目录,然后输入cwd
两次尝试都会输出错误:
Error: Argument or block definition required
on shared_data.tf line 1:
1: ../../shared_data.tf
为解决此错误,我尝试使用terraform变量先定义相对路径:
variable "shared_data_path" {
default = "../../shared_data.tf"
}
var.shared_data_path
哪个输出错误:
Error: Argument or block definition required
on shared_data.tf line 4:
4: var.shared_data_path
An argument or block definition is required here. To set an argument,use the
equals sign "=" to introduce the argument value.
解决方法
您正在查看的该回购不会像您所做的那样仅通过写入文件名来继承数据。链接到的文件是符号链接,这意味着Terraform将该文件视为具有父目录中文件的实际内容。您可以在文件的标题中看到它,并且如果您已克隆该存储库,则在计算机上查看它时将看到它是一个符号链接。
假设您具有这种目录树:
- parent_dir/
|-shared_data.tf
|-child_dir/
|-something.tf
然后您可以在child_dir
中创建符号链接,方法是cd
进入终端中的child_dir
,然后运行ln -s ../shared_data.tf .
然后您将有一棵像
的树- parent_dir/
|-shared_data.tf
|-child_dir/
|-something.tf
|-shared_data.tf -> ../shared_data.tf
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。