bitbucket - 导入的 Terraform 模块中的本地引用
问题描述
我在 terraform-modules 项目中的 bitbucket 上有 TF 模块。
在 bitbucket 上的主模块(在 azure/main_module 目录中)中,我有:
azure
|
+- sub_module
main.tf
main_module
main.tf
在main_module/main.tf
我有以下文件结构:
azure
|
+-general
|
+-main.tf
module "my_sub_module" {
source = "../azure/sub_module/"
...
}
现在,在另一个项目中,在另一个模块中,我有:
module "credit" {
source = "git::bitbucket.org:myorg/terraform-modules.git//main_module"
...
}
在另一个项目中运行 tf plan 时出现以下错误:
Error: Unreadable module directory
Unable to evaluate directory symlink: lstat
.terraform/modules/main_module/azure/azure: no such file or directory
当本地引用被替换为 bitbucket 引用时,一切正常。所以看起来好像 main_module 被导入了,但是该项目中的本地引用被解释为导入项目中的本地引用(带有通用模块的那个),然后它找不到其他模块,因为它正在搜索错误的项目?
任何想法如何解决这个问题,同时仍然在导入的项目中使用本地引用?
解决方案
推荐阅读
- python - OpenCV:用轮廓上的大多数点拟合椭圆(而不是最小二乘)
- arrays - 如何使用字段和变量通过 Dialogflow 在 Google Actions 中永久保存数据?
- macos - 在文件夹名称后重命名文件
- c# - 在双向链表中交换节点
- java - 如何读取每行带有数字的文件java
- c# - 如何从 .NET Framework 调用 .NET Core 程序集中的方法
- sql-server - 为什么我的应用会一直打开太多的休眠连接?
- amazon-s3 - Kafka S3 连接:基于挂钟的定时轮换似乎没有写
- python - 在表格小部件中显示不正确的列表
- node.js - 每当使用 Firebase 函数创建另一个集合中的另一个文档时,如何从集合中更新文档?