重命名Terraform目录

时间:2018-05-14 23:32:35

标签: terraform

我想重构我的terraform目录 - 我将去多个地区并将一个大的.tfstate文件拆分成较小的文件。作为一个起点,我想采用现有的terraform文件夹并将其重命名为terraform/us-east-1,以便我可以添加terraform/ca-central-1/vpc,但是一旦我这样做,Terraform会打破:

$ terraform plan
Error: Error loading modules: module mymodule: open .terraform/modules/f6d6d743c2d8bd836f32baa02d0922f7: no such file or directory

$ terraform init
Initializing modules...
- module.mymodule
Error downloading modules: Error loading modules: module mymodule: open .terraform/modules/f6d6d743c2d8bd836f32baa02d0922f7: no such file or directory

我还没有找到关于在搜索中重命名terraform文件夹的特殊方法,但我没有运气。奇怪的是,当我测试了一些组合时,有时它似乎可以用于我不想使用的组合,但我还没有弄清楚它何时起作用以及它何时不起作用,只是因为我试图使用的名称永远无效。

建议?

2 个答案:

答案 0 :(得分:3)

.terraform文件夹使用绝对路径。更改文件夹结构还需要重新创建.terraform文件夹。

这可以通过删除文件夹并再次运行terraform init来完成。

terraform documentation开始,terraform get -update也会解决此问题

  

将模块下载到本地.terraform文件夹中。不应将此文件夹提交给版本控制。无论给出此命令的dir参数如何,都会相对于当前工作目录创建.terraform文件夹。

     

如果已下载模块且未设置-update标志,则Terraform将不执行任何操作。因此,多次运行此命令是安全的(并且快速)。

答案 1 :(得分:0)

我可以说,这是移动.terraform文件夹的结果。如果我删除它,那么我需要再次terraform init,但之后它似乎表现得很好。手指交叉?