DataGrip 2025.2 Help

Terraform

Terraform 是一个开源工具,使开发人员和运维团队能够通过代码定义、管理和配置云资源及基础设施组件,而不是通过云提供商的用户界面进行手动配置。

借助它,您可以以声明性和自动化的方式管理基础设施资源,如虚拟机、网络和存储。 用编码模板替代手动配置可确保基础设施设置的一致性和可重复性。

安装 Terraform 和 HCL 插件

此功能依赖于 Terraform and HCL插件,您需要安装并启用。

  1. Ctrl+Alt+S 打开设置,然后选择 Plugins

  2. 打开 Marketplace 选项卡,找到 Terraform and HCL插件,然后点击 安装 (如果系统提示,重启 IDE)。

DataGrip 通过为核心 Terraform 元素和提供程序定义的概念提供智能代码洞察,帮助您保持高效,从而更快地编写基础架构代码并减少干扰。 这包括以下功能:

  • 语法高亮

    您可以在 设置 对话框(Ctrl+Alt+S )中,在 编辑 | 颜色方案 | HCL编辑器|配色方案|HashiCorp 插值语言 页面上自定义颜色设置。

  • 代码格式化

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 代码风格 | Terraform 页面访问与 Terraform 相关的代码样式设置。

  • 整行代码补全

    使用本地运行的深度学习模型完成整行代码。

    Terraform 全行代码补全

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 常规 | 内嵌补全 页面禁用 Terraform 的整行代码补全功能。

  • 浮动工具栏 ,允许您快速注释和重新格式化代码,以及调用上下文和 AI 操作。

    Terraform 浮动工具栏
  • 文件模板

    项目 工具窗口中,右键点击一个目录,然后选择 新建 (或按 Alt+Insert ),然后选择 Terraform 文件。 这将打开一个对话框,允许您从可用的 Terraform 文件模板中进行选择。

    Terraform 文件类型

    要修改 Terraform 文件模板,请打开 设置 对话框(Ctrl+Alt+S ),然后转到 编辑器 | 文件和代码模板

  • 检查

    您可以检测重复、冲突、已弃用或缺失的元素,未解析的引用,未知资源等。

    Terraform 缺失属性检查

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 检查 | Terraform 下查看所有 Terraform 检查。

  • 代码补全

    这包括对已知提供程序、提供程序函数、资源、数据源和参数的补全支持。

    Terraform 资源补全

    在配置提供程序要求时,IDE 同样提供帮助。 在 required_providers 块中,IDE 会建议可用的提供程序及其相关属性,如 sourceversion ,帮助您根据 Terraform 规范定义要求。 有关提供程序要求的更多信息,请参阅 Terraform 文档

  • 代码导航

    对于资源、变量、本地变量和数据源,DataGrip 以内嵌提示的形式显示其用法数量。 单击内嵌提示(或按 Ctrl+B )以显示其所有用法并导航到它们。

    Terraform 查找用法

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 内嵌提示 | 代码视图 | 用法 下禁用、启用和更改内嵌提示的使用位置。

  • 重构

    若要重命名该元素及其所有用法,请按 Shift+F6

  • 文件监视器 ,可让您在每次保存文件时运行 Terraform 命令(例如 terraform fmt)。 要启用此功能,请安装 文件监视器插件。

  • 结构视图

    使用 结构 工具窗口快速预览和导航 Terraform 文件。

    Terraform 结构

    工具窗口可以在 视图(V) | 工具窗口(T) | 结构 中找到或通过按 Alt+7 显示。

  • 快速文档

    将鼠标悬停在参数上即可获得它的快速文档。

    Terraform 快速文档

    有关更多详细信息,您还可以通过按 Shift+F1 打开 Terraform Registry(此文档的来源)。

  • 编码辅助还包括大括号匹配 Ctrl+Shift+M 、代码折叠 Ctrl+NumPad +/Ctrl+NumPad - 、添加行注释 Ctrl+/ 和块注释 Ctrl+Shift+/

指定 Terraform 可执行文件的路径

要使用运行配置从 IDE 运行 Terraform 命令,必须在您的计算机上安装 Terraform。

在大多数情况下,DataGrip 会检测到 Terraform 的安装路径。 如果不是这种情况,或者路径检测不正确,您可以手动指定。

  1. Ctrl+Alt+S 打开设置,然后选择 工具 | Terraform 和 OpenTofu

  2. Terraform 可执行文件路径 字段中,指定 Terraform 的路径。

运行 Terraform

Terraform 和 HCL 插件为 Terraform 提供专用的运行配置。 这些运行配置允许您自定义 terraform 命令的执行,例如添加参数或传递环境变量。

使用边栏图标运行 Terraform

  1. 在 Terraform 文件中,点击 运行

  2. 在打开的窗口中,选择 计划 以创建执行计划,或选择 Apply 如果您已经有一个 Terraform 计划并希望应用它。

    从边距运行 Terraform

如果尚未对该目录执行 Terraform 初始化步骤,则 运行 沟槽图标中会有一个警告标志。 在这种情况下,DataGrip 建议您在运行 terraform init 命令之前,先运行 terraform planterraform apply

从沟槽图标运行 Terraform 会创建一个临时运行配置。 您可以通过点击 更多操作 并选择 保存配置 在运行小部件中将其保存为永久性的。

手动创建 Terraform 运行配置

  1. 转到 运行 | 编辑配置。 或者,按 Alt+Shift+F10 ,然后 0

  2. 请点击 添加新配置 按钮(添加运行/调试配置 )并开始输入 Terraform

    Terraform run configuration
  3. 请选择运行配置的类型:

    • Terraform Init 以运行 terraform init 命令

    • Terraform 验证 以运行 terraform validate 命令

    • Terraform Plan 以运行 terraform plan 命令

    • Terraform Apply 以运行 terraform apply 命令

    • Terraform 销毁 以运行 terraform destroy 命令

    • Terraform ,这使您能够提供任何其他 Terraform 命令

  4. Command 列表中选择一个 Terraform 命令。 要运行此列表中未包含的命令,请选择 自定义 并在 程序参数 字段中指定它。

  5. 为运行配置命名,并在必要时更改工作目录。 如果您使用环境变量,请在 环境变量 字段中指定它们,或者选择一个文件以使用其中的变量。

格式化 Terraform 代码

使用 DataGrip,您可以对 Terraform 文件应用代码样式。 DataGrip 包括两个格式化工具:

使用 Terraform 格式化工具

Terraform 格式化工具 (terraform fmt) 基于 Terraform 代码风格。 适用于 .tf .tfvars 文件。

使用 Terraform 格式化工具需要 安装 Terraform

  • 在主菜单中,进入 代码|Terraform 工具|格式化文件.

  • 或者按 Ctrl+Alt+Shift+F

尽管 Terraform formatter terraform fmt 适用于整个文件, DataGrip formatter 也可以应用于选定的代码片段。

使用 DataGrip 格式化工具

DataGrip 格式化器基于由 Terraform 和 HCL 插件提供的 DataGrip 代码样式。 您可以在 IDE 设置中自定义此代码样式,位于 编辑器 | 代码风格 | Terraform

除此之外 .tf .tfvars ,它还适用于 .hcl 文件。

  • 要重新格式化文件,请在编辑器中打开它,然后在主菜单中转到 代码 | 格式化文件。 或者按 Ctrl+Alt+Shift+L

  • 要重新格式化部分代码,请选择一段代码,然后在主菜单中进入 代码 | 格式化代码。 或者按 Ctrl+Alt+L

Terraform 模板文件

DataGrip 支持通常使用 .tftpl 扩展名的 Terraform 模板文件。 对模板文件的支持包括代码辅助(语法高亮、检查等)、导航到模板文件和动态模板。

要使用 实时模板,请在 Terraform template 文件中开始输入 iffor

实时模板

在 Terraform 文件中,您可以使用 templatefile 函数注入模板。 使用 DataGrip,您可以快速从 Terraform 文件导航到模板文件。

  1. 在您的 Terraform 文件中,找到 templatefile 函数。

  2. 将文本光标放到模板文件名处并按 Ctrl+B

选择模板数据语言

如果语言在模板文件扩展名 (file.<lang>.tftpl) 中指定,则该语言用作数据语言。 例如,在 file.js.tftpl 中,将使用 JavaScript。 如果未指定数据语言(例如, file.tftpl ),模板文件将被识别为纯文本。

您可以选择数据语言(或更改检测到的语言)以便文件语法能够相应地被识别。

  1. 在编辑器中右键单击文件选项卡,然后选择 将 <Language> 模板数据语言更改为 ,例如, 将 JavaScript 模板数据语言更改为将纯文本模板数据语言更改为

    或者,按 Alt+Enter显示上下文操作 )在文件中并选择 选择模板数据语言

  2. 在打开的语言列表中,选择语言。

高级设置

自动下载 Terraform 文档

默认情况下,DataGrip 会从 Terraform Registry 下载 Terraform 属性的快速文档。 如果您遇到网络或性能问题,可以禁用它,DataGrip 将显示来自元数据的描述。 这些描述的可用性取决于资源开发者。

自动构建本地元数据

Terraform 和 HCL 插件附带特定版本的提供者元数据,这允许您使用例如已知属性自动完成等编码辅助功能。 如果您拥有不同版本的提供者元数据,DataGrip 在每次初始化项目时都会更新自己的元数据(terraform init ),以确保您获得正确的编码辅助。 如果您不希望 DataGrip 更新其元数据,可以禁用此复选框。

深度搜索变量

当您在 Terraform 中使用变量时,DataGrip 会检查您项目中的所有 Terraform 文件以查找变量定义。 如果您希望 DataGrip 只检查根目录中的文件(包含 .terraform.lock.hcl 的那个),请取消选中复选框。

Terraform 代码样式设置

Terraform 特定的代码样式设置可在 编辑器 | 代码样式 | Terraform/OpenTofu | 其他 中找到。

格式化时对齐属性

选择对齐属性及其值的方式:对齐等号、对齐值或不对齐任何内容。

行注释符号

选择在按下 Ctrl+/ 时用于单行注释的符号。

在补全时自动导入提供程序

在完成资源名称时将提供程序要求插入到当前文件中。 如果缺少 required_providers 块,请添加它。

调用 'terraform/tofu fmt' 进行格式化

当您调用 代码 | 格式化文件 时运行 Terraform(或 OpenTofu)格式化器。

支持 OpenTofu

OpenTofu 是一个 Terraform 的分支,它是开源的、社区驱动的,并由 Linux 基金会管理。

DataGrip 为 OpenTofu 文件提供编码辅助,包括语法高亮、补全和检查。 它还为 OpenTofu 提供了专用的运行配置,与 Terraform 的基本相同,但它们使用 tofu 命令。

Terraform run configuration

指定 OpenTofu 可执行文件的路径

要使用运行配置从 IDE 运行 OpenTofu 命令,必须在您的计算机上安装 OpenTofu。

在大多数情况下,DataGrip 会检测到 OpenTofu 的安装路径。 如果不是这种情况,或者路径检测不正确,您可以手动指定。

  1. Ctrl+Alt+S 打开设置,然后选择 工具 | Terraform 和 OpenTofu

  2. OpenTofu 可执行文件路径 字段中指定 OpenTofu 的路径。

最后修改日期: 2025年 9月 26日