跳过插件下载Terraform

问题描述

我在Azure Pipelines中使用自托管代理,并在那里安装了terraform 0.13。当我在Azure Devops中使用terraform任务时,作为commandOptions,我选择了“ -plugin-dir = / usr / local / bin / .terraform.d / plugins”以跳过插件下载。不幸的是,terraform将其下载到工件中并使其比原本应有的重得多。此外,下一阶段(部署阶段)仅使用来自工件的插件,而不使用来自我们的代理的插件。 我们的虚拟机上没有太多空间,因此我们希望避免不必要的下载。 此外,我们在主目录中使用插件目录定义了.terraformrc。此外,我们在其中添加了环境变量: https://www.terraform.io/docs/commands/cli-config.html#provider-installation

提前谢谢!

enter image description here

enter image description here

解决方法

您可以尝试设置-get-plugins=false选项。

-get-plugins=false-跳过插件安装。 Terraform将使用安装在用户plugins目录中的插件,以及已为当前工作目录安装的所有插件。如果安装的插件不足以进行配置,则初始化失败。

document中对此进行了说明。

,

最终,我用另一种方法做到了-我使用了Azure Pipelines中的缓存任务。这是ITNext的解决方案: https://itnext.io/infrastructure-as-code-iac-with-terraform-azure-devops-f8cd022a3341

这是我描述缓存任务的方式: enter image description here

很好地描述按键并选择正确的路径。